Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 517917

Summary: Impossible to reorder lost messages on sequence diagram & freeze
Product: [Modeling] Sirius Reporter: Jessy Mallet <jessy.mallet>
Component: DiagramAssignee: Project Inbox <sirius.diagram-inbox>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: julien.dupont, laurent.redor, pierre.guilet
Version: 5.0.0Keywords: triaged
Target Milestone: 5.1.0   
Hardware: PC   
OS: Windows NT   
See Also: https://git.eclipse.org/r/96652
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=796d4dfec3f4ab691fd0f5465b7d853614e266f8
Whiteboard:
Attachments:
Description Flags
Test case to use in order to reproduce error. none

Description Jessy Mallet CLA 2017-06-07 04:23:52 EDT
Created attachment 268780 [details]
Test case to use in order to reproduce error.

When user create a lost/Found message or during a reorder with Lost/Found message on sequence diagram, the diagram freeze and a stackOverflow error appears.

Steps to reproduce:

* import the modeling project doremi-2952.zip,
* open the sequence diagram called "Sequence Diagram on i1"
* create a "Found Read" message between m9 message and m10 message : it should be done without error and m9 message should be shifted to insert new message
Comment 1 Pierre Guilet CLA 2017-06-07 06:07:15 EDT
The stack is the following : 

...
at org.eclipse.emf.transaction.impl.TransactionImpl.isRollingBack(TransactionImpl.java:695)
	at org.eclipse.emf.transaction.impl.TransactionImpl.isRollingBack(TransactionImpl.java:695)
	at org.eclipse.emf.transaction.impl.TransactionImpl.isRollingBack(TransactionImpl.java:695)
	at org.eclipse.emf.transaction.impl.ReadWriteValidatorImpl.remove(ReadWriteValidatorImpl.java:131)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.deactivate(TransactionalEditingDomainImpl.java:551)
	at org.eclipse.emf.transaction.impl.TransactionImpl.close(TransactionImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:474)
	at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:147)
	at org.eclipse.emf.common.command.CompoundCommand.execute(CompoundCommand.java:261)
	at org.eclipse.emf.transaction.util.TriggerCommand.execute(TriggerCommand.java:113)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:398)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.executeTriggers(WorkspaceCommandStackImpl.java:408)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
Comment 2 Laurent Redor CLA 2017-06-27 05:59:56 EDT
New Gerrit change created: https://git.eclipse.org/r/#/c/96652/
Comment 4 Pierre-Charles David CLA 2017-11-08 03:36:43 EST
Available in Sirius 5.1.0, see https://wiki.eclipse.org/Sirius/5.1.0.