We are happy to share the third alpha release of Camunda BPM Runtime 7.14 with you!

This release features the following improvements:

  • Improved External Task Fetch and Lock
  • Cleanup of History Cleanup Logs
  • REST API: Fetch Telemetry Configuration
  • Cockpit: Asynchronously Set Variables to Process Instances
  • Cockpit: Plugin Point for Batch Operations
  • Support for Wildfly 20
  • 11 Bug Fixes

You can Download Camunda for free or Run it with Docker.

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

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

Improved External Task Fetch and Lock

In situations where’re you’re using highly concurrent requests to fetch external tasks (e.g. when you run many external task clients for the same topic), it was possible that requests could fail with a NullPointerException due to a concurrent modification. Example: A request fetches a task that is completed and thus deleted in parallel. This alpha release improves the handling of this situation so that the fetch and lock request no longer fails. Instead, such tasks are removed from the result set. The implementation was contributed by community member Harish Malavade.

Cleanup of History Cleanup Logs

Data produced by the engine, like finished Tasks, finished process instances and executed jobs can be stored in history tables. Depending on the usage of the BPM platform, the collection of history data can grow rapidly. To counter this we can schedule periodic cleanup of history data. Each time the history cleanup job is executed, it will search for expired history data and delete it, including entries from the historic job log. Since the history cleanup job is a job in itself, it will also produce historic job log entries potentially resulting in a long history job log containing only history cleanup job logs (because the rest was cleaned up).

To give admins more control over their history, we created a process engine configuration property to enable cleanup of historic job log entries produced by the history cleanup job. The historyCleanupJobLogTimeToLive property takes an ISO-8601 formatted duration String specifying only a number of days (PT30D and PT1D is allowed while PT1H or PT5D10H is not).

Please note, that this feature only works in conjunction with removal-time based history cleanup. More information about the new property and process engine configuration in general can be found in the docs.

REST API: Fetch Telemetry Configuration

The upcoming Camunda BPM Runtime 7.14.0 minor release will provide an option to collect and send environment and usage data that will help us to improve our products for you. The option is not applied by default, and in this alpha we added a new REST API endpoint where the telemetry configuration can be checked. Here is an example of what the request/response looks like:

GET /telemetry/confuguration
{
enableTelemetry: true
}

For more information, please have a look at REST API documentation here. The Java API is already available via the ManagementService.
Read more about telemetry in the docs. With this alpha the telemetry cannot be activated in bpm-platform.xml or standalone.xml.

Cockpit: Asynchronously Set Variables to Process Instances

Sometimes it is necessary to add or update data of an already running process instance. For example, when a user entered incorrect data at the beginning of a process, the data needs to be corrected on-the-fly. In Cockpit, this is already possible by setting or updating a variable during process runtime. While this feature is helpful, it becomes a repetitive task when the same variable needs to be set to many process instances at once.

With this release, we introduce a new feature in Cockpit to set variables to the root scope of process instances asynchronously. The new batch operation allows you to set one or more variables to a group of process instances that can be filtered according to several criteria.

The Feature “Set Variables to Process Instances” in Action

Please also see the documentation about the Java API and REST API.

Cockpit: Changes to the Plugin API

With the last alpha release, we introduced the new Frontend Plugin API. We changed a few details in the API since then to clarify what is needed for the plugin to work.

Every plugin point now supports the same top-level attributes: id, pluginPoint, priority, render and unmount. A detailed explaination for these can be found in our docs. These can be used for every documented plugin point. Certain plugin points require additional configuration, which will be capsuled in a properties object, which is specific for every plugin point. The most common property is the label attribute, like in the process definition runtime tab. The new batch operations plugin shows what a more complex plugin point can look like.

To make it easier to create requests to the Camunda REST API, the argument of the render function now has the api property. It contains the API endpoints for the engine and webapps, as well as the current engine and the CSRF tokens. This makes creating requests much easier. You can access it from you plugin like this: render: (node, {api}) => {console.log(api)}. Check out our examples to see how it is used.

Cockpit: Plugin Point for Batch Operations

Operations affecting many process instances can be grouped into a batch operation and executed in the background without blocking the normal execution. With Camunda BPM, you can create any kind of operations using the Java API. To make your custom batch operations more accessible, we added a new Plugin point to cockpit to make it easier to trigger them.

The interface allows you to render a custom form to define your own payload for the operation. Camunda offers filter options for process instances, decision instances and batches. Check out the details and an example in the Plugin Point Documentation.

Support for Wildfly 20

With Camunda BPM Runtime 7.14.0-alpha3 we added support for WildFly Application Server 20. You can find an overview of all supported environments in the documentation.

Share Your Thoughts with Us!

Your feedback is really important to us, so please download Camunda BPM Runtime 7.14.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 @Camunda, or file a bug in our ticket system.

  • The Journey from Camunda BPM to Camunda...

    You might have noticed something a little different about our recent release announcement: Camunda BPM is now Camunda Platform. We’ve renamed our process automation solution to better reflect our mission to help organizations automate any process, anywhere. And, to be perfectly honest, we are also keeping up with what we’re hearing in the field — many of our users and customers already informally refer to “Camunda Platform” or even just “the platform” or simply “Camunda” when talking about the product. During CamundaCon 2020.2, our CEO, Jakob Freund, explained that processes are the algorithms that determine how an organization runs. They define how we work within our own team or across teams, and they influence the way we deal with our...

    Read more
  • Camunda Optimize 3.4.0 Released

    We’re excited to announce the release of Camunda Optimize 3.4.0. Camunda Optimize provides business activity monitoring for workflows, supporting continuous process improvement by providing transparency into your automated workflows and decisions. Business-friendly reports, dashboards and alerts make it possible to identify process bottlenecks and improve end-to-end processes. If you’d like to get started with Optimize 3.4.0 right away, you can download the release here with your Camunda Enterprise Platform customer credentials. And if you’re not yet a Camunda customer, you can sign up here for a free 30-day trial of the Camunda Enterprise Platform, which includes Camunda Optimize. In the rest of this post, we’ll highlight some of the new capabilities introduced in Optimize 3.4.0. Introducing Multi-Measure and Multi-Aggregation Reports...

    Read more
  • Cawemo Enterprise (On-Premises) 1.6 Released

    We’re happy to announce the 1.6 release of Cawemo Enterprise On-Premises. Cawemo is the specification platform of the Camunda stack, enabling all stakeholders to model and collaborate on BPMN and DMN diagrams and related files. The main improvements in this release are: DMN Modeling Cawemo supports modeling of DMN diagrams in addition to BPMN. Enhanced Template Editor In addition to UiPath, Cawemo supports templates for Automation Anywhere and External Service Tasks. Additionally, you are able to define BPMN Errors. Improved Access Rights Capabilities Organizations and projects can have more than one admin now. LDAP integration You can connect your on-premises installation to an LDAP server. As a Camunda Enterprise customer, you can install or upgrade to version 1.6 following our...

    Read more