Description of problem: In 6.1.0 ER3, the functionality of the conflict dialog was fixed. Unfortunately, 6.1.0 ER4 does not show the conflict dialog any more. There is no issue which require its removing. My opinion is that the commit [1] which fixed bz 1159238 brokes this functionality. Can you investigate it? [1] https://github.com/droolsjbpm/jbpm-designer/commit/be97a9034 Version-Release number of selected component (if applicable): 6.1.0 ER4 Steps to Reproduce: 1. Open two browsers window 2. Login as 'user1' in the first window 3. Login as 'user2' in the second window 4. user1: create BP 'test' 5. user1: create process 'Start -> Task -> End' 6. user1: save process 7. user1: transfor Task to Manual Task and save a process 8. user2: Open BP 'test' 9. user2: delete End event and create this process 'Start -> Manual Task -> Task2 -> End' 10. user2: save 11: user1: transform End event to Termination End event 12: user1: save Actual results: No Conflict Dialog is displayed. user1 rewritten user2's work. The version history allows to restore it. Expected results: The conflict dialog is displayed which says that 'user2' modified 'process location'. Options are "Force Save", "Reopen". Additional info: Issues which was fixed in 6.1.0 ER3: - bz 1111406 - bz 1140695
Looks like we had two concurrentUpdateSessionInfo fields. One in DesignerPresenter and other in BaseEditor. If there was concurrent edits we did set the other, but when comparing if there has been any concurrent edits, we used the one that was not set. master: https://github.com/droolsjbpm/jbpm-designer/commit/915407d1b 6.2.x: https://github.com/droolsjbpm/jbpm-designer/commit/4b70b1b98
I confirm that the conflict editor is present in 6.1.0 ER5. Unfortunately, it causes regressions. See bz 1111406 and bz 1140695 which were fixed in 6.1.0 ER3 and its functionality was broken by commit: https://github.com/droolsjbpm/jbpm-designer/commit/be97a9034 I assigned this issue because the state of ER5 is not same as the state of ER3. The both regression were mentioned in Description.
The problem is that the Commit wasn't holding the sessionId and that made impossible for the platform to determine who edited the process. So the concurrent update event was fired for all the users that where editing the process (included the one that did the commit). To fix that, the sessionId is sent to the designer so a correct commit message with a valid sessionId can be created. Commit (master): https://github.com/droolsjbpm/jbpm-designer/commit/bc1341422df74e6d4efe7335737a2740b4697edd
Cherry-piked to 6.2.x branch. Commit (6.2.x): https://github.com/droolsjbpm/jbpm-designer/commit/4e44ed3aa53bdda37fac8ffcbeed3eb98f88d5a1
This issue was verified on 6.1.0 CR1. The conflict dialog has the expected behaviour.