Camunda 7.8.0-alpha1 Released

By
  • Blog
  • >
  • Camunda 7.8.0-alpha1 Released
TOPICS

30 Day Free Trial

Bring together legacy systems, RPA bots, microservices and more with Camunda

Sign Up for Camunda Content

Get the latest on Camunda features, events, top trends, and more.

TRENDING CONTENT

We are excited to announce the first alpha release of Camunda BPM 7.8.

It is packed with new features. In a nutshell, the highlights are:

  • Timezone support
  • Statistics for history cleanup
  • More notation elements for the fluent BPMN builder API
  • New batch operation for changing the suspension state of process instances
  • Upgrade to the latest version of MyBatis
  • 22 Bug Fixes

Also see the complete list of release notes
and the list of known issues.

Be one of the first to try Camunda BPM 7.8! You can download it
or run it with docker. There is no reason to hesitate – it is free!

If you want to dig in deeper, you can find the source code on GitHub.

Timezone Support

This release introduces the possibility to operate Camunda BPM in a setting that involves multiple timezones.
Previously, all users were supposed to be in the timezone of the server which runs the engine. Starting with this release,
the default date format includes explicit timezone information so that users in different timezones can easily collaborate.

In the new format yyyy-MM-dd'T'HH:mm:ss.SSSZ the Z stands for the zero UTC offset zone designator.

If you prefer to use the old format, have a look at the
custom date format documentation
to find out how to change the date format.

Heads up!
Please bear in mind that this change might affect your embedded task forms or custom webapp plugins. To work with
the new default date format, you need to send dates with timezone information included.

Statistics for the History Cleanup

With the last minor release of Camunda BPM, the History Cleanup
feature was introduced. It allows to remove outdated historic data on a periodical basis.

This release brings possibilities to monitor the removed data, which helps to choose the best suited settings for the
history cleanup, based on metrics and reports. The metrics are provided for instances of BPMN, CMMN and DMN definitions.

Additionally, the report of finished process instances highlights processes which cause bigger amounts of historic data.
This helps to take a well-informed decision for the history time to live parameter.

For more details, please see the documentation about Metrics and the
Finished Process Instance Report.

More Notation Elements for the Fluent BPMN Builder API

The fluent BPMN builder API allows to create simple process definitions in Java. This release expands the range of notation
elements by event subprocesses and compensation markers for activities.

The event subprocess can be added to the process builder in the manner of creating a new process. Before the compensation
marker for an activity can be used, a boundary event has to be attached to the task which should be possible to compensate.

Here you can find a simple Java example which includes both newly introduced notation elements:

ProcessBuilder process = Bpmn.createProcess();

// Compensation marker for activity (user task)
BpmnModelInstance instance = process
  .startEvent()
    .userTask()
      .boundaryEvent()
        .compensateEventDefinition()
        .compensateEventDefinitionDone()
        .compensationStart()
          .userTask()
            .name("compensate")
        .compensationDone()
  .endEvent()
  .done();

// Event subprocess
process.eventSubProcess()
  .startEvent()
    .userTask()
  .endEvent();

When the Fluent BPMN builder API generates the BPM diagram graphically, the event subprocess will be placed underneath
the BPMN diagram:

New Batch Operation to Change the Suspension State of Process Instances

The concept behind batch operations is to provide a solution for applying administrative operations on a huge
number of process instances without a need for manual intervention.

This release adds the operation to update the suspension state of process instances. The process instances which are
supposed to be processed by the batch operation can be defined in three ways:

  • By listing each process instance id separately
  • By a process instance query
  • By a historic process instance query

The batch operation can be executed synchronously or asynchronously.

This example shows how to suspend process instances asynchronously:

runtimeService.updateProcessInstanceSuspensionState()
    .byProcessInstanceIds(processInstance1.getId(), processInstance2.getId())
    .suspendAsync();

To find out how to use this feature, please see the documentation of the
Java API
as well as the
REST API
.

Upgrade to the Latest Version of MyBatis

MyBatis was upgraded to its latest version, 3.4.4.
This resolves the issue of a NullPointerException in heavy load scenarios which was caused by a MyBatis bug.

Take a Sneak Peek at What Is Next

We are already eagerly busy preparing for the next alpha release, which is scheduled for end of July.

Among other things, we are working on the following features, which are planned to be released in one of the next alpha releases:

  • Batch modification of process instances (EE)
  • Faster rendering of BPMN diagrams in Cockpit
  • OR in task queries

And that is not all: if you are interested, take a look at the roadmap.

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

Your Feedback Is Highly Appreciated!

With every release we constantly strive to improve Camunda BPM. To make this possible, we are reliant on your feedback.
Feel free to share your ideas and suggestions with us.

You can contact us by writing a post in the forum.

Try All Features of Camunda

Related Content

We're streamlining Camunda product APIs, working towards a single REST API for many components, simplifying the learning curve and making installation easier.
Learn about our approach to migration from Camunda 7 to Camunda 8, and how we can help you achieve it as quickly and effectively as possible.
We've been working hard to reduce the job activation latency in Zeebe. Read on to take a peek under the hood at how we went about it and then verified success.