Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prevent NPE when terminating call activity #10996

Merged
merged 1 commit into from
Nov 22, 2022

Conversation

remcowesterhoud
Copy link
Contributor

@remcowesterhoud remcowesterhoud commented Nov 15, 2022

Description

If a parent process has an active call activity element instance there is no guarantee that the called activity is still activate. When the called activity is completed it will try to complete the call activity element. At this point we try to apply the output mappings. If something goes wrong here an incident is created. When we try to terminate the call activity at this point the called activity is already completed and no instance of it will be available. For this reason we must verify that this instance is not null before we try to terminate it.

Related issues

closes #10606

Definition of Done

Not all items need to be done depending on the issue and the pull request.

Code changes:

  • The changes are backwards compatibility with previous versions
  • If it fixes a bug then PRs are created to backport the fix to the last two minor versions. You can trigger a backport by assigning labels (e.g. backport stable/1.3) to the PR, in case that fails you need to create backports manually.

Testing:

  • There are unit/integration tests that verify all acceptance criterias of the issue
  • New tests are written to ensure backwards compatibility with further versions
  • The behavior is tested manually
  • The change has been verified by a QA run
  • The impact of the changes is verified by a benchmark

Documentation:

  • The documentation is updated (e.g. BPMN reference, configuration, examples, get-started guides, etc.)
  • If the PR changes how BPMN processes are validated (e.g. support new BPMN element) then the Camunda modeling team should be informed to adjust the BPMN linting.

Please refer to our review guidelines.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 15, 2022

Test Results

   957 files  ±    0     957 suites  ±0   1h 40m 29s ⏱️ +22s
7 771 tests +273  7 764 ✔️ +273  7 💤 ±0  0 ±0 
7 971 runs  +273  7 962 ✔️ +273  9 💤 ±0  0 ±0 

Results for commit 001c9aa. ± Comparison against base commit a42b9c9.

♻️ This comment has been updated with latest results.

Copy link
Member

@saig0 saig0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@remcowesterhoud looks good. 👍

I have two minor suggestions. Please have a look.

If a parent process has an active call activity element instance there is no guarantee that the called activity is still activate. When the called activity is completed it will try to complete the call activity element. At this point we try to apply the output mappings. If something goes wrong here an incident is created.
When we try to terminate the call activity at this point the called activity is already completed and no instance of it will be available. For this reason we must verify that this instance is not null before we try to terminate it.
@remcowesterhoud
Copy link
Contributor Author

bors merge

@zeebe-bors-camunda
Copy link
Contributor

Build succeeded:

@backport-action
Copy link
Collaborator

Successfully created backport PR #11068 for stable/8.1.

Copy link
Contributor Author

@remcowesterhoud remcowesterhoud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bors merge

@zeebe-bors-camunda
Copy link
Contributor

Already running a review

zeebe-bors-camunda bot added a commit that referenced this pull request Nov 22, 2022
11068: [Backport stable/8.1] Prevent NPE when terminating call activity r=remcowesterhoud a=backport-action

# Description
Backport of #10996 to `stable/8.1`.

relates to #10606

Co-authored-by: Remco Westerhoud <remco@westerhoud.nl>
@remcowesterhoud remcowesterhoud added the version:8.1.5 Marks an issue as being completely or in parts released in 8.1.5 label Dec 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
version:8.1.5 Marks an issue as being completely or in parts released in 8.1.5
Projects
None yet
Development

Successfully merging this pull request may close these issues.

NPE during process instance modification
3 participants