Question & Answer
Question
Answer
If a business process has a low persistence level some services or adapters may not persist the status report in the Process Data, and under rare conditions it may fail to be Resumed.
An example is the Translation Services, the Translator Report will may not be retained for a failed translation if the persistence level is too low.
To resolve this it's possible to use a BPML syntax on the specific service to force the persistence level at the individual bp step.
In the process modeller, on the service click on the advanced button.
In the "Name" column enter: WF_RUNTIME_OVERRIDE_PERSISTENCE_LEVEL
In the "Value" column you can use: PERSISTENCE_OVERRIDE_NONE_KEEP_ERRORS
This level is sufficient to obtain the Translator Report in the Process Data.
These are all the possible values:
PERSISTENCE_FULL PERSISTENCE_MINIMAL (same as PERSISTENCE_STEP_STATUS) PERSISTENCE_NONE (same as PERSISTENCE_BP_START_STOP) PERSISTENCE_OVERRIDE_MINIMAL (same as PERSISTENCE_STEP_STATUS_ONLY) PERSISTENCE_OVERRIDE_NONE_KEEP_ERRORS (same as PERSISTENCE_BP_START_STOP_ONLY) PERSISTENCE_OVERRIDE_NONE
Below is a sample bpml:
<operation name="BPMetadata_ErrorInfoAll">
<participant name="BPMetaDataInfoService"/>
<output message="BPMetaDataServiceTypeInputMessage">
<assign to="DISPOSITION">FALSE</assign>
<assign to="LINKAGE">FALSE</assign>
<assign to="WORKFLOW_ID" from="/ProcessData/alert/pid/text()"></assign>
<assign to="TRACE">TRUE</assign>
<assign to="WF_RUNTIME_OVERRIDE_PERSISTENCE_LEVEL">PERSISTENCE_FULL</assign>
<assign to="." from="*"></assign>
</output>
<input message="inmsg">
<assign to="/ProcessData/alert/ErrorInformation" from="*"></assign>
</input>
</operation>
Historical Number
HTG1082
Was this topic helpful?
Document Information
Modified date:
28 February 2023
UID
swg21562247