Context:
A recent support case indicates that it is possible for process instances to not have a processDefinitionKey in the engine data. When our processInstance importers attempt to import such an instance, an NPE occurrs due to our check for the required process instance index.
We should adjust our importServices to ensure no instance data is persisted to Optimize without a defintionKey by enriching the instances with the definitionKey upon import: when Optimize attemtps to import instance data with null definitionKey, we use the definitionId to fetch the correct definition and then add the key of this definition to the incomplete instance data before persisting it to ES. This way no data is lost and the definitionKey does not cause an NPE further down the import pipeline.
This affects any importService that writes to the processInstance index (so instance importServices as well as instance data importServices (eg Activty)).
AT:
- ImportServices check that all definitionKeys are present before importing/trying to create missing instance indices
- If definitionKey is null, we fetch the definition using definitionId and enrich instance data before proceeding with import
This is the controller panel for Smart Panels app
[OPT-5220] Entity specific ImportPipeline deadlock on missing processDefinitionKey value
Summary | Original: ImportServices should always check that the processDefinitionKey is present | New: ProcessInstance related ImportServices should always check that the processDefinitionKey is present |
Description |
Original:
*Context:*
A recent support case indicates that it is possible for process instances to not have a processDefinitionKey in the engine data. When our processInstance importers attempt to import such an instance, an NPE occurrs due to our check for the required process instance index. We should adjust our importServices to not import any data that lacks a processDefinitionKey. *AT:* * ImportServices check that all definitionKeys are present before importing/trying to create missing instance indices |
New:
*Context:*
A recent support case indicates that it is possible for process instances to not have a processDefinitionKey in the engine data. When our processInstance importers attempt to import such an instance, an NPE occurrs due to our check for the required process instance index. We should adjust our importServices to not import any data that lacks a processDefinitionKey. This affects any importService that writes to the processInstance index (so instance importServices as well as instance data importServices (eg Activty)). *AT:* * ImportServices check that all definitionKeys are present before importing/trying to create missing instance indices |
Mentioned Roles |
Mentioned Groups |
Issue Type | Original: Task [ 3 ] | New: Bug Report [ 1 ] |
Summary | Original: ProcessInstance related ImportServices should always check that the processDefinitionKey is present | New: Entity specific ImportPipeline deadlock on missing processDefinitionKey value |
Labels | Original: current_release | New: SUPPORT current_release |
Remote Link | New: This issue links to "Page (camunda confluence)" [ 16108 ] |
Link | New: This issue is related to SUPPORT-10666 [ SUPPORT-10666 ] |