Details
-
Feature Request
-
Resolution: Fixed
-
L3 - Default
-
None
Description
AT:
- There is a camunda extension element that can be used to define a default job priority in the BPMN XML for a) the entire process b) specific activities
- specific activity priorities override process level priorities
- priorities for a subprocess are valid for the subprocess only (but not contained activities)
- jobs with higher priority are acquired before jobs with lower priority
- how a priority is determined is exchangeable per process engine
- Prioritized execution can be (de-)activated in the engine config
- A job's priority can be changed via the ManagementService
Implementation notes:
- There is a JobPriorityProvider SPI that can be defined in the process engine configuration and determines a job's priority when it is created
- The default SPI implementation uses the values from the BPMN 2.0 XML
- The Job table has a PRIORITY_ column
- Acquisition sorts by values in the PRIORITY_ column
- PRIORITY_ is the primary sorting, then the existing sortings (e.g. by due date or type) apply
- For NULL priorities, there is a) consistent behavior across all databases or b) documented which database behaves in which way