Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » Undo throws 'no duplicates' constraint in eclipse juno
Undo throws 'no duplicates' constraint in eclipse juno [message #1044794] Fri, 19 April 2013 07:00 Go to next message
Sarika Sinha is currently offline Sarika Sinha
Messages: 45
Registered: February 2010
Location: Bangalore, India
Member
Hi,
We have recently moved from eclipse 3.6 to eclipse 4.2.2.

We are facing some problem during Undo action on few elements with following trace:

Caused by: java.lang.IllegalArgumentException: The 'no duplicates' constraint is violated
at org.eclipse.emf.common.util.AbstractEList.add(Unknown Source)
at org.eclipse.emf.common.util.ECollections.setEList(Unknown Source)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(Unknown Source)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(Unknown Source)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.applyAndReverse(Unknown Source)
at org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.applyAndReverse(Unknown Source)
at org.eclipse.emf.transaction.util.CompositeChangeDescription.applyAndReverse(Unknown Source)
at org.eclipse.emf.workspace.AbstractEMFOperation.doUndo(Unknown Source)
at org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(Unknown Source)
... 80 more

Is this a known issue ?
As this was working fine with previous eclipse version, will like to know if there has been a change in this area and we need to do something to make this work ?
I do see a bugzilla related to undo, Can this be the cause of it ?
https://bugs.eclipse.org/bugs/show_bug.cgi?id=398712

Regards,
Sarika


Sarika Sinha
JDT Programmer
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1044811 is a reply to message #1044794] Fri, 19 April 2013 07:16 Go to previous messageGo to next message
Ed Merks is currently offline Ed Merks
Messages: 25947
Registered: July 2009
Senior Member
Sarika,

Comments below.

On 19/04/2013 1:00 PM, Sarika Sinha wrote:
> Hi,
> We have recently moved from eclipse 3.6 to eclipse 4.2.2.
>
> We are facing some problem during Undo action on few elements
In which editor?
> with following trace:
>
> Caused by: java.lang.IllegalArgumentException: The 'no duplicates'
> constraint is violated
> at org.eclipse.emf.common.util.AbstractEList.add(Unknown Source)
> at org.eclipse.emf.common.util.ECollections.setEList(Unknown Source)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(Unknown
> Source)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(Unknown Source)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.applyAndReverse(Unknown
> Source)
> at
> org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.applyAndReverse(Unknown
> Source)
> at
> org.eclipse.emf.transaction.util.CompositeChangeDescription.applyAndReverse(Unknown
> Source)
> at org.eclipse.emf.workspace.AbstractEMFOperation.doUndo(Unknown
> Source)
> at org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(Unknown
> Source)
> ... 80 more
>
> Is this a known issue ?
No.
> As this was working fine with previous eclipse version, will like to
> know if there has been a change in this area and we need to do
> something to make this work ?
Which version of EMF were you using? 2.6?
> I do see a bugzilla related to undo, Can this be the cause of it ?
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=398712
A Papyrus bug. Is you're problem related to using Papyrus?
>
> Regards,
> Sarika
>
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1044818 is a reply to message #1044811] Fri, 19 April 2013 07:28 Go to previous messageGo to next message
Sarika Sinha is currently offline Sarika Sinha
Messages: 45
Registered: February 2010
Location: Bangalore, India
Member
Hi,
Yes, We were using EMF 2.6 .

No, we are not using Papyrus.


Regards,
Sarika


Sarika Sinha
JDT Programmer
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1044852 is a reply to message #1044818] Fri, 19 April 2013 08:16 Go to previous messageGo to next message
Ed Merks is currently offline Ed Merks
Messages: 25947
Registered: July 2009
Senior Member
Sarika,

I can't tell you what's wrong from just your stack trace. It's also odd
that everything has unknown source as if there was no debug information;
all our builds include debug information.
Which version of EMF are you moving to?


On 19/04/2013 1:28 PM, Sarika Sinha wrote:
> Hi,
> Yes, We were using EMF 2.6 .
>
> No, we are not using Papyrus.
>
>
> Regards,
> Sarika
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1045387 is a reply to message #1044852] Sat, 20 April 2013 02:45 Go to previous messageGo to next message
Sarika Sinha is currently offline Sarika Sinha
Messages: 45
Registered: February 2010
Location: Bangalore, India
Member
Hi,
Our product RSA (Rational Software Architect) has now moved to Ecore 2.8 now.
I am not working on eclipse build directly. Any thing else I can provide to understand the problem better ?
stack trace:

org.eclipse.core.commands.ExecutionException: Undo of operation was rolled back (possibly due to concurrent write)
at org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:409)
at org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:379)
at org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
at org.eclipse.gmf.runtime.common.core.command.CompositeCommand.doUndoWithResult(CompositeCommand.java:622)
at org.eclipse.gmf.runtime.common.core.command.AbstractCommand.undo(AbstractCommand.java:215)
at org.eclipse.gmf.runtime.common.core.command.CompositeCommand.doUndoWithResult(CompositeCommand.java:622)
at org.eclipse.gmf.runtime.common.core.command.AbstractCommand.undo(AbstractCommand.java:215)
at org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:379)
at org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
at org.eclipse.core.commands.operations.DefaultOperationHistory.doUndo(DefaultOperationHistory.java:417)
at org.eclipse.core.commands.operations.DefaultOperationHistory.undo(DefaultOperationHistory.java:1282)
at org.eclipse.ui.operations.UndoActionHandler.runCommand(UndoActionHandler.java:80)
at org.eclipse.ui.operations.OperationHistoryActionHandler$1.run(OperationHistoryActionHandler.java:311)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.access$6(TimeTriggeredProgressMonitorDialog.java:1)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog$2.run(TimeTriggeredProgressMonitorDialog.java:203)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.run(TimeTriggeredProgressMonitorDialog.java:216)
at org.eclipse.ui.operations.OperationHistoryActionHandler.run(OperationHistoryActionHandler.java:326)
at org.eclipse.gmf.runtime.common.ui.action.actions.global.GlobalUndoAction.doRun(GlobalUndoAction.java:245)
at org.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler.run(AbstractActionHandler.java:359)
at org.eclipse.gmf.runtime.common.ui.action.ActionManager.run(ActionManager.java:229)
at org.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler.runWithEvent(AbstractActionHandler.java:377)
at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:119)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:231)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:212)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:131)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:171)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:277)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:496)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:547)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:368)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:314)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:83)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1100)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1521)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4640)
at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:345)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4528)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2546)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
Caused by: java.lang.IllegalArgumentException: The 'no duplicates' constraint is violated
at org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:336)
at org.eclipse.emf.common.util.ECollections.setEList(ECollections.java:222)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(FeatureChangeImpl.java:593)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:518)
at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.applyAndReverse(FeatureChangeImpl.java:503)
at org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.applyAndReverse(ChangeDescriptionImpl.java:369)
at org.eclipse.emf.transaction.util.CompositeChangeDescription.applyAndReverse(CompositeChangeDescription.java:117)
at org.eclipse.emf.workspace.AbstractEMFOperation.doUndo(AbstractEMFOperation.java:695)
at org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:360)
at org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
... 79 more


Sarika Sinha
JDT Programmer
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1045438 is a reply to message #1045387] Sat, 20 April 2013 04:30 Go to previous messageGo to next message
Ed Merks is currently offline Ed Merks
Messages: 25947
Registered: July 2009
Senior Member
Sorry, but it's not possible to diagnose the problem just from the stack
trace.


On 20/04/2013 8:45 AM, Sarika Sinha wrote:
> Hi,
> Our product RSA (Rational Software Architect) has now moved to Ecore
> 2.8 now. I am not working on eclipse build directly. Any thing else I
> can provide to understand the problem better ?
> stack trace:
>
> org.eclipse.core.commands.ExecutionException: Undo of operation was
> rolled back (possibly due to concurrent write)
> at
> org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:409)
> at
> org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:379)
> at
> org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
> at
> org.eclipse.gmf.runtime.common.core.command.CompositeCommand.doUndoWithResult(CompositeCommand.java:622)
> at
> org.eclipse.gmf.runtime.common.core.command.AbstractCommand.undo(AbstractCommand.java:215)
> at
> org.eclipse.gmf.runtime.common.core.command.CompositeCommand.doUndoWithResult(CompositeCommand.java:622)
> at
> org.eclipse.gmf.runtime.common.core.command.AbstractCommand.undo(AbstractCommand.java:215)
> at
> org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:379)
> at
> org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
> at
> org.eclipse.core.commands.operations.DefaultOperationHistory.doUndo(DefaultOperationHistory.java:417)
> at
> org.eclipse.core.commands.operations.DefaultOperationHistory.undo(DefaultOperationHistory.java:1282)
> at
> org.eclipse.ui.operations.UndoActionHandler.runCommand(UndoActionHandler.java:80)
> at
> org.eclipse.ui.operations.OperationHistoryActionHandler$1.run(OperationHistoryActionHandler.java:311)
> at
> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
> at
> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
> at
> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
> at
> org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.access$6(TimeTriggeredProgressMonitorDialog.java:1)
> at
> org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog$2.run(TimeTriggeredProgressMonitorDialog.java:203)
> at
> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
> at
> org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.run(TimeTriggeredProgressMonitorDialog.java:216)
> at
> org.eclipse.ui.operations.OperationHistoryActionHandler.run(OperationHistoryActionHandler.java:326)
> at
> org.eclipse.gmf.runtime.common.ui.action.actions.global.GlobalUndoAction.doRun(GlobalUndoAction.java:245)
> at
> org.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler.run(AbstractActionHandler.java:359)
> at
> org.eclipse.gmf.runtime.common.ui.action.ActionManager.run(ActionManager.java:229)
> at
> org.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler.runWithEvent(AbstractActionHandler.java:377)
> at
> org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:119)
> at
> org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:76)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
> at java.lang.reflect.Method.invoke(Method.java:613)
> at
> org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
> at
> org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:231)
> at
> org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:212)
> at
> org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:131)
> at
> org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:171)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:277)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:496)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:547)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:368)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:314)
> at
> org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:83)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
> at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
> at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1100)
> at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1521)
> at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4640)
> at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:345)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:4528)
> at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2546)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756)
> at
> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at
> org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
> at
> org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
> at
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
> at
> org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
> at java.lang.reflect.Method.invoke(Method.java:613)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
> Caused by: java.lang.IllegalArgumentException: The 'no duplicates'
> constraint is violated
> at
> org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:336)
> at
> org.eclipse.emf.common.util.ECollections.setEList(ECollections.java:222)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(FeatureChangeImpl.java:593)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:518)
> at
> org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.applyAndReverse(FeatureChangeImpl.java:503)
> at
> org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.applyAndReverse(ChangeDescriptionImpl.java:369)
> at
> org.eclipse.emf.transaction.util.CompositeChangeDescription.applyAndReverse(CompositeChangeDescription.java:117)
> at
> org.eclipse.emf.workspace.AbstractEMFOperation.doUndo(AbstractEMFOperation.java:695)
> at
> org.eclipse.emf.workspace.CompositeEMFOperation.doUndo(CompositeEMFOperation.java:360)
> at
> org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
> ... 79 more
>
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1047541 is a reply to message #1045438] Tue, 23 April 2013 06:59 Go to previous messageGo to next message
Sarika Sinha is currently offline Sarika Sinha
Messages: 45
Registered: February 2010
Location: Bangalore, India
Member
Hi,
I have created a defect and attached the debug trace.


Sarika Sinha
JDT Programmer
Re: Undo throws 'no duplicates' constraint in eclipse juno [message #1148323 is a reply to message #1047541] Mon, 21 October 2013 08:23 Go to previous message
Santhosh Hari is currently offline Santhosh Hari
Messages: 21
Registered: March 2010
Junior Member
Hi EdMerks and Sarika,

I m facing a similar issue in undo/redo of compound command execution. Do you have any fix for this issue ?

Any help greatly appreciated.

Given below is the stack trace


Error
Mon Oct 21 18:15:15 IST 2013
Undo of operation was rolled back (possibly due to concurrent write)

java.lang.IndexOutOfBoundsException: fromIndex = -3
at java.util.SubList.<init>(AbstractList.java:620)
at java.util.RandomAccessSubList.<init>(AbstractList.java:775)
at java.util.AbstractList.subList(AbstractList.java:484)
at org.eclipse.emf.edit.command.AddCommand.doUndo(AddCommand.java:419)
at org.eclipse.emf.edit.command.AbstractOverrideableCommand.undo(AbstractOverrideableCommand.java:156)
at org.eclipse.emf.common.command.CompoundCommand.undo(CompoundCommand.java:327)
at Mymethod.undo(CreateMyCommand.java:241)
at org.eclipse.emf.workspace.EMFCommandOperation.doUndo(EMFCommandOperation.java:153)
at org.eclipse.emf.workspace.AbstractEMFOperation.undo(AbstractEMFOperation.java:370)
at org.eclipse.core.commands.operations.DefaultOperationHistory.doUndo(DefaultOperationHistory.java:417)
at org.eclipse.core.commands.operations.DefaultOperationHistory.undo(DefaultOperationHistory.java:1282)
at org.eclipse.ui.operations.UndoActionHandler.runCommand(UndoActionHandler.java:78)
at org.eclipse.ui.operations.OperationHistoryActionHandler$4.run(OperationHistoryActionHandler.java:311)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.access$6(TimeTriggeredProgressMonitorDialog.java:1)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog$2.run(TimeTriggeredProgressMonitorDialog.java:203)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.run(TimeTriggeredProgressMonitorDialog.java:216)
at org.eclipse.ui.operations.OperationHistoryActionHandler.run(OperationHistoryActionHandler.java:326)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.ui.actions.RetargetAction.runWithEvent(RetargetAction.java:230)
at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:119)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:468)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:786)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:885)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:567)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:508)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:123)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1100)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1521)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4640)
at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:5962)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4528)
at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5958)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2546)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)



Regards,
Santhosh

[Updated on: Mon, 21 October 2013 08:50]

Report message to a moderator

Previous Topic:XCORE and XTEXT Grammar
Next Topic:IllegalArgumentException: feature not found in EClass
Goto Forum:
  


Current Time: Thu Jul 31 15:47:48 EDT 2014

Powered by FUDForum. Page generated in 0.08200 seconds