• Blog
  • >
  • Camunda BPM Custom Batch 1.3.0

Ready to build a BPMN model?

Build your first business process model instantly with Camunda Platform 8.

Join the Camunda Developer Newsletter

Get the latest events, release notes, and product updates straight to your mailbox.


I’m happy to announce the new version 1.3.0 of the Camunda BPM Custom Batch extension. This extension provides a simple way to use the camunda batch functionality for your own purposes and split huge workloads into small asynchronous jobs. If you are interested in how the extension is working, and how customers use it, take a look at the presentation slides from CamundaCon 2018.

So what happened since version 1.0.0? Here is a summary of exclusive and prioritized batch jobs.

Exclusive (1.3.0)

With 1.3.0 it’s now possible to disable the exclusive flag of the generated batch jobs.
By default, a job is always exclusive, which means that all jobs of the same process instance, as well as all batch jobs, are not run in parallel. Thus, potential conflicts are reduced at the cost of performance.
(See also Camunda Documentation: Exclusive Jobs.)

However, performance might be an issue when it comes to batch jobs. By setting exclusive to false, custom batch jobs can now run in parallel, i.e., all job executor threads can work on them, and they will be executed much faster. But take care, this can also lead into delayed execution of regular timer jobs because all job executor threads could be busy with batch jobs.
In this case, you could use the jobExecutorPreferTimerJobs flag to prefer timer jobs before working on batch jobs.

A custom batch could be set as non-exclusive when creating the batch:


Configuration format (1.3.0)

Adding the exclusive flag to the batch also required to extend the batch configuration. This is always a breaking change because up to now, we just saved the serialized configuration class. In order to make it easier in the future to extend the batch configuration, it’s now saved as a JSON string.
Nevertheless, the extension is still able to work on batches with the old configuration format.

Priority (1.2.0)

When releasing 1.2.0, we implemented a feature to set the priority of generated batch jobs. With this, it’s now possible to set e.g., a lower priority to batch jobs than to normal timer jobs or a higher priority for batches which should be completed as fast as possible. Priority is always important to consider when you play around with the exclusive flag.

The priority of the batch jobs can be set during creation of the batch:


Related Content

Learn the difference between REST, GraphQL and gRPC. Understand the pros and cons and top use cases of each API to help you choose the right one.
Learn about the path we've taken to support Jakarta EE 10 on Wildfly 27 as smoothly as possible for our customers.
Learn why more and more companies are investing in cloud-native technology, and how it can benefit you today.