How would I make sure all task complete on the same node in a clustered environment

I’m trying to setup a clustered camunda-bpm-spring-boot-starter:1.0.0 application.

I have a requirement that all tasks execute on the same node that created the process instance.

Closest thing I’ve seen in the docs would be setting the “camunda.bpm.job-execution.deployment-aware” to TRUE.

But when I set that the tasks are stalled at START.

My Spring properties are as follows

deployment-resource-pattern: classpath://*.bpmn20.xml, classpath://*.bpmn
schema-update: true
deployment-aware: true
active: true

1 Like

Hi Bryan

Some notes:

  • spring-boot-starter is already on 1.3.0, you should always use the latest version since we did a lot of updates and fixes since the 1.0.0
  • the deployment-aware execution is still an open issue . I have a feeling it should work, but we do not have automated tests that ensure the behavior (tricky because of shared db + 2 engine setup).
  • I strongly advice not to use the (seamingly convenient) deployment-resource-pattern scan and instead go for a regular processses.xml+ProcessApplication approach. Deployment then runs through the defined camunda deploy-cycle which does more than just pushing xml files to the repo-service
  • Deploymenaware means that two engine nodes are connected to the same datasource, but some processes are only deployed on one of them. Of course its related to running instances (how would you start one, if no process is deployed), but it checks for different setup

My advice would be to try the processes.xml+processapplication setup first. Please open/comment on the issues if you have new findings, so we can aprove the extension if something is missing.
Sidenote: We agreed to “deprecate” the deployment-resource-pattern and push the processapplication approach as of 2.0.0 since we were having some other issues (embedded forms do not work) with the simple scan.

Hope that helps, feel free to come back to me if it does not work. If you are interested in contributing: we really could use that automated test :slight_smile: