Update notes (2.7 to 3.0)
To update Optimize to version 3.0.0, perform the following steps first: Migration & Update Instructions.
If you have done an Optimize update prior to this one, note the changes in the update procedure.
Here you will find information about:
- Limitations
- Known issues
- Changes in the supported environments
- Any unexpected behavior of Optimize (e.g due to a new feature)
Known issues
Potential NullpointerException on Update to 3.0.0
In some circumstances, the update to 3.0.0 might fail with the following log output:
06:00:00.000 - Starting step 1/9: UpdateIndexStep
...
06:00:02.066 - Error while executing update from 2.7.0 to 3.0.0
java.lang.NullPointerException: null
at org.camunda.optimize.upgrade.steps.schema.UpdateIndexStep.execute(UpdateIndexStep.java:71)
...
This is a known issue that occurs if you previously updated to Optimize 2.7.0. You can solve this issue by executing the following command on your Elasticsearch cluster before running the update again.
curl -s -XDELETE <elasticsearchHost>:9200/optimize-event_v2-000001
The update should now successfully complete.
Cannot disable import from particular engine
In 3.0.0, it is not possible to deactivate the import of a particular Optimize instance from a particular engine (via engines.${engineAlias}.importEnabled
). In case your environment is using that feature for e.g. a clustering setup, we recommend you to stay on Optimize 2.7.0 until the release of Optimize 3.1.0 (Scheduled for 14/07/2020) and then update straight to Optimize 3.1.0.
Limitations
User operation log import
Optimize now imports the user operation log. Due to this, the engine user now requires engine permissions to read the user operation log, see also the configuration documentation.
Suspension filter
Due to a limitation of the user operations log data retrieval in the engine API, process instance suspension states of instances suspended after Optimize has been started are not correctly imported. This leads to inaccuracies in the Suspended Instances Only Filter, which will only apply to instances which were suspended before they were imported by Optimize.
Furthermore, since the suspension state of process instances in Optimize is updated according to historic data logs, if you have history cleanup enabled it is possible that the relevant data will be cleaned up before Optimize can import it, leading to inaccuracies in the state of suspended process instances which will then not appear in the appropriate filter.
Event-based processes
There might be cases where an incorrect and lower than expected number of events are shown when mapping either process start and end events to nodes on your event based process, or when mapping multiple engine task events from the same engine model.
These are known issues and are fixed in the upcoming Optimize 3.1.0 release. If using this version or newer, you can correct previously imported data in your event-based process either by recreating or republishing the event based process.
Alternatively, forcing a reimport of the engine data after updating to a version with this fix will correct these errors too.
Changes in the update procedure
Although Optimize 3.0.0 is a major version change, we still allow a rolling update from 2.7 to the new version. However, since the support for Elasticsearch changed to the latest major version 7.X, there is an additional step in the update routine involved.
Before you can perform the actual update, you need to do a rolling update of Elasticsearch from 6.X to 7.X. The exact details can be found in the Migration & Update Instructions.
Please note that the following updates are not supported by Elasticsearch:
- 6.8 to 7.0.
- 6.7 to 7.1.–7.6.X.
Changes in the supported environments
With this Optimize version, there are also changes in the supported versions of the Elasticsearch and Camunda 7.
Elasticsearch
Optimize now requires at least Elasticsearch 7.0.0
and supports the latest major version up to 7.6.0
.
See the Supported Environments sections for the full range of supported versions.
In case you need to update your Elasticsearch cluster, refer to the general Elasticsearch Update Guide on how to do that. Usually, the only thing you need to do is to perform a rolling update. There's also a dedicated section in the Migration & Update Instructions on how to perform the rolling update.