We are migrating our case management application from Activiti 5.15.1 to Flowable 7.2 (Java 17, Spring 6.2.x, MariaDB/PostgreSQL, Liquibase 4.33.0).
As we started investigating the migration process we hit the following error on startup:
FlowableException: couldn't upgrade db schema: alter table ACT_RU_TIMER_JOB add column SCOPE_ID_ varchar(255)
Caused by: SQLSyntaxErrorException: Table 'ACT_RU_TIMER_JOB' doesn't exist
It appears Flowable detects the existing Activiti 5.x schema and attempts to run upgrade scripts, but the schema is too old for the upgrade path to succeed. This ACT_RU_TIMER_JOB didn’t exist in Activiti 5.x.
We have the folowing questions:
- Is there a supported upgrade path?
We understand the schema changed significantly between these versions. Is there official migration tooling or a documented incremental upgrade path or is clean schema recreation the only realistic option?
We already tried to add the migration scripts 5.15.1 to 6.1 from the flowable-engine and that went well.
- How should we handle in-flight process instances?
We have process instances that may be active at the time of migration. Are these recoverable in Flowable 7.2 if the schema is recreated, or is the internal execution model different enough that resumed instances would be unreliable? What is the recommended production cutover strategy in this scenario?
- Should we use the Flowable 5 compatibility engine?
We noticed Flowable ships with a Flowable 5 compatibility engine specifically for running legacy Activiti/Flowable 5 process instances. Is this the recommended bridge for our situation — and if so, what are the limitations and known issues we should be aware of before committing to that approach?
Any guidance would be greatly appreciated, thanks.