I am currently working on a migration project from MQ Workflow to Activiti. The biggest issue we have is trying to figure out how the in-flight processes can be migrated. My Client is not interested in the Cost implications of running both engines until all in-flight processes are complete due to the fact that all their business process are long running. Has anyone done this before or does anyone know a good way of implementing this.
You'd have to exactly mimic the execution (ACT_RU_EXECUTION) tree for those processes or use the new 'skipExpression' feature which allows you to skip over certain steps (so they are no executed) to get to the correct state. It depends on the complexity of the MQ workflows you have to know how much work this would be.
If these are really complex processes … like many things in parallel, subprocess, etc. I doubt if you'd get in completely perfectly correct … the exection tree in Activiti has a lot of optimizations built-in and mapping from one to another is not … easy.
I understand… I will definitely post something if we figure this out…. With IBM quitting support for MQ Workflows later this year… I know this is going to be a huge problem for so many people…