10-07-2015 03:11 PM
10-08-2015 04:03 AM
10-08-2015 10:09 AM
10-09-2015 04:13 AM
03-18-2017 05:20 PM
I also am having the same problem. The same business process was working fine under PostgreSQL; the problem has appeared after switching to MySQL (version 5.7.17). Did you find a solution? I can reproduce in a unit test, but I have to load my entire application, so I can't share the test... It must be something in my application code that is causing the problem, since if I run the same test with only Activiti classes, it works well.
03-18-2017 06:20 PM
I have found the problem.
I registered a pre-BPMN parse handler. This parse handler sends all task events (create, assign, complete, delete, save) to a Spring event handler. The Spring event handler looks up certain information about the task. In particular, it uses the TaskService to find identity links for the task. For create, assign, and save events, this doesn't seem to be a problem. For delete and complete events, it causes the NullPointerException in CheckedDeleteOperation.sameIdentity method, as described in the original post.
The fix will be to detect when the event handler is running from a complete or delete event (where we don't care about identity links anyway), and not lookup identity links.
Same code did work with PostgreSQL though. MySQL obviously has some different concurrency model... I am running under InnoDB which supposedly supports multi-version concurrency control (MVCC).
03-18-2017 06:36 PM
I just verified this works fine. Moral of the story: when running with MySQL, do not lookup identity links during your event handler for task complete and delete events.
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.