Closed abelhegedus closed 11 years ago
@abelhegedus Does it happend only with GMF editors? Do you have any idea why is this happening? Nevertheless, I think the incquery matcher based notification provider would solve the issue.
I have only managed to reproduce this with the BPMN editor. I know that it doesn't happen if I bring up the local menu on the "background" of the editor and it does happen if I select and right-click on an element (probably an EObject) in the diagram and call the initialize validation on editor.
Normally, the validation initialization should do exactly the same in both cases.
Okay, as the stack trace also shows, this happens only when the editor is transaction based. The triggerengine executes the activations inside a transactions and every time it receives a transaction closing notification, it will start again, even if it is its own transaction.
Also, it seems that it has nothing to do with the selection after all...
@abelhegedus Can you please take a look at my commit which aims to solve the StackOverFlow? It is kinda hack but this way I managed to check the source Command within the TransactionBasedNotificationProvider. However, during debug sessions I saw that transactionClosed is called so many times for the same Transaction that it result another issues.
Removing resolved flag - @abelhegedus can you please check whether this issue is resolved with the new trigger engine and if yes, close it without Eclipse migration.
Validation framework does not use transactions (since it doesn't modify the model)
Checked, working. Fixed.
It seems that the behavior of the validation initialization is different if the selection is empty and if its not. If it's not, the trigger engine falls into an infinite loop and we get a stack overlow.
Try with BPMN example in graphical editor.