Migration from v1.8 to v1.9
Overview
Version 1.9 continues to use Flyway for all database schema changes introduced in v1.8. Existing v1.8 installations are already under Flyway control, so no baseline properties are required for this upgrade: all pending migrations are applied automatically on the first startup.
The main change that requires attention during migration is how the task notification e-mail body is configured: it now points to an HTML template file instead of holding the message text directly in okmflow.properties.
Migration steps for existing v1.8 installations
- Download OKMFlow 1.9 from https://download.openkm.com/pro/tools.
- Stop Tomcat and replace the okmflow.war archive.
-
Review $TOMCAT_HOME/okmflow.properties:
-
If
task.notification.bodyortask.notification.overdue.bodywere customized with inline text, they must be converted. Starting with v1.9, these properties point to an HTML template file instead of holding the text directly:# Before (v1.8) task.notification.body=A workflow task has been assigned # After (v1.9) task.notification.body=file:/path/to/custom-task-assignment-body.htmlMove the previous text into an HTML file on disk and point the property to it with a
file:prefix, or remove the override entirely to fall back to the new bundled default template (a friendlier, better formatted notification e-mail). -
task.notification.subjectkeeps working as before (a plain text/FreeMarker string). A new, equivalenttask.notification.overdue.subjectproperty is now available to customize overdue task notifications independently of assignment notifications. -
Optionally enable the new purge jobs to keep the database from growing
indefinitely. All are disabled by default, so no action is required to
preserve the current v1.8 behavior:
# Delete ended process instances (and their tasks, variables and logs) # older than the retention period process.instance.purge.enabled=false process.instance.purge.cron=0 0 3 * * * process.instance.purge.retention.days=90 # Delete process instance audit log rows older than the retention period process.instance.log.purge.enabled=false process.instance.log.purge.cron=0 0 2 * * * process.instance.log.purge.retention.days=90 # Delete variable audit log rows older than the retention period variable.log.purge.enabled=false variable.log.purge.cron=0 0 2 * * * variable.log.purge.retention.days=90
-
If
- Start Tomcat. Flyway applies all migrations after v1.8 automatically, including the new activity log table for workflow variable changes and the indexes added to improve performance on large installations.
Fresh installations
New installations do not require any manual migration steps. Flyway detects an empty database and applies all migrations in order.