Camunda Team Blog

Camunda 7.8.0-alpha3 Released

Written by Tassilo Weidner on , under Execution category.

We are delighted to share the third alpha release of Camunda BPM 7.8 with you!

This release features the following improvements:

  • Batch process instance modification in Cockpit (EE)
  • Faster rendering of BPMN diagrams in Cockpit
  • Support for JSON and XML variable types in Cockpit
  • History time to live for batch operations
  • Global configuration for the failed job retry time cycle
  • 20 Bug Fixes

To try out Camunda BPM 7.8 you can download one of the distributions or pull and run the docker image.

If you want to take a deeper dive, you can find the source code on GitHub.

For a complete list of all improvements take a look at the release notes. Please also see the list of known issues.

Batch Process Instance Modification in Cockpit (EE)

Sometimes process instances somehow take a wrong turn or end up in a state they should not be in. Or, you need to “rewind”, or “go back” in order to re-execute some steps with different parameters. Since the release of Camunda BPM 7.3.0 it is possible to modify a single process instance that way and with Camunda BPM version 7.7.0 you can modify multiple instances as a batch operation via API.

This release brings the batch modification feature to Cockpit! You find a new “Modify” tab on the process definition screen that allows you to specify modification instructions for the process definition. Or just grab the tokens from the diagram and move them somewhere else!

Animation showing batch process instance modification

Camunda BPM Cockpit

Modify multiple process instances as batch

Please note that the Cockpit integration of the batch process instance modification is an enterprise feature. If you are not an enterprise customer yet, you can get a quote or request a free trial here.

Faster Rendering of BPMN Diagrams in Cockpit

Working with complex diagrams in Camunda BPM Cockpit was problematic as it took a long time to load and display these.

With this release, the diagram rendering speed is up to 4x faster than before.

Chart showing the increasing of speed from circa eight to two seconds

Loading a complex diagram – speed comparision in seconds

Support for JSON and XML Variable Types in Cockpit

Cockpit provides the possibility to inspect, add, change and delete variables of process instances. Prior to this release, JSON and XML variables were only supported on engine level but not in Cockpit.

This release enables you to add variables of these types:

Camunda BPM Cockpit

Adding JSON/XML variables

Moreover, it is possible to edit and delete such variables. To do so, Cockpit is now equipped with strong JSON and XML dynamic validators. Upon adding or editing a variable, the user instantly gets feedback if the JSON or XML value was malformed.

Camunda BPM Cockpit

Editing and deleting JSON/XML variables

History Time to Live for Batch Operations

The last minor release of Camunda BPM introduced the History cleanup feature. It allows you to remove outdated historic data on a periodical basis.

This release brings the history time to live feature to the historic data of batch operations. As soon as a batch operation has been finished, the specified time begins to run. During this time period, the historic data is available until the time has elapsed. Afterwards the history data is irretrievable, cleaned up and the used diskspace is available again.

The configuration can be specified globally or separately for each batch operation type in the applicationContext.xml file:

...
<!-- global -->
<property name="batchOperationHistoryTimeToLive" value="PT5D" />

<!-- per batch operation type -->
<property name="batchOperationsForHistoryCleanup">
  <map>
    <entry key="instance-migration" value="PT10D" />
    <entry key="instance-modification" value="PT7D" />
    ...
    <entry key="custom-operation" value="PT3D" />
  </map>
</property>
...

To take a well-informed decision based on real statistics for the history time to live parameter, the Cleanable batch report helps to identify batch types producing larger amounts of historic data.

Global Configuration for the Failed Job Retry Time Cycle

Whenever a job fails the engine takes care of retrying this job. By default there are two retries left if the job fails for the first time. This behavior can be changed locally within the BPMN 2.0 XML for several BPMN notation elements (e. g. tasks).

Starting with this release, the engine allows you to configure the job retry time cycle globally across all process definitions. All jobs are affected by this unless they have a more specific local configuration.

The property can be set inside the deployment descriptor / process engine configuration:

...
<process-engine name="default">
  ...
  <properties>
    ...
    <property name="failedJobRetryTimeCycle">R5/PT5M</property>
  </properties>
</process-engine>
...

For more information about this feature please also see the documentation.

Next Steps…

As usual the fourth alpha release is scheduled for the end of the next month and we are already working on it.

In order to shorten the waiting time we would like to issue an outlook of features which will be included in one of the next alpha releases:

  • Incorporate Spring Boot Starter extension as core feature
  • Improved task selection
  • Support for deleted historic variables (EE)

To get a complete overview of already implemented and planned features, please take a look at the roadmap.

The minor release of Camunda BPM 7.8 is coming this fall (November 30, 2017).

Share your thoughts with us!

Your feedback is really important to us, so please download Camunda BPM 7.8.0-alpha3, try it out, and let us know what you think about it.

You can contact us in the forum, send a tweet to @camundaBPM, or file a bug in our ticket system.