Community
Participate
Working Groups
I'm still seeing a stack overflow but so far only in Windows. This seems similar to what Steffen reported in bug 389944 comment 21. Happens when I am really agressivly opening and closing reviews, patch sets, etc.. Could be something to do with persistence latency as we have these seperate files opening and closing, but that's just a guess at this point. org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.StackOverflowError) at org.eclipse.swt.SWT.error(SWT.java:4361) at org.eclipse.swt.SWT.error(SWT.java:4276) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3537) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3189) 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) Caused by: java.lang.StackOverflowError at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eInternalResource(BasicEObjectImpl.java:931) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResource(BasicEObjectImpl.java:926) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:262) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:212) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:167) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:111) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:354) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:545) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:780) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:756) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:212) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:167) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:111) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:354) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:545) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:780) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:756) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:212) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:167) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:111) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:354)
Wrong stack trace. Over on Windows now.. :) eclipse.buildId=M20130204-1200 java.version=1.7.0_21 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US Framework arguments: -product org.eclipse.sdk.ide Command-line arguments: -product org.eclipse.sdk.ide -data C:\Users\Miles Parker\workspace/../runtime-New_configuration -dev file:C:/Users/Miles Parker/workspace/.metadata/.plugins/org.eclipse.pde.core/New_configuration/dev.properties -os win32 -ws win32 -arch x86_64 -consoleLog Error Tue May 21 21:31:10 PDT 2013 Unhandled event loop exception org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.StackOverflowError) at org.eclipse.swt.SWT.error(SWT.java:4361) at org.eclipse.swt.SWT.error(SWT.java:4276) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4144) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761) 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(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) 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.StackOverflowError at java.lang.Character.getType(Unknown Source) at java.lang.Character.isDigit(Unknown Source) at java.lang.Character.isDigit(Unknown Source) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:522) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:206) at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:161) at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList$Resolving.resolve(EObjectContainmentWithInverseEList.java:105) at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:348) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eObjectForURIFragmentSegment(BasicEObjectImpl.java:539) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:774) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.getEObject(ResourceImpl.java:750) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:197) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:257) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473)
More on this. I hanve't been able to find a cause that might have triggered this so there could be something going on w/ the persistence mechanism itself coupled with some kind of concurrency issue. On the other hand, I've added checks to all of the relevant code to help ensure that model access only happens on the model thread. The proxy resolution should only be happening from the Reviews file to the Repository. Currently, we're storing users and approval types with the repos. The repository file should always be open, and there is no way to remove a user once they've been added so it's not clear what the issue is with the fragment location, but the first change we should make is to use semantic (e.g. user display name or some more stable value) ids. I really don't like the default relative references as they are too easy to become corrupted. Another option is to simply move users to reviews, but that seems drastic.
Another possiblity given that this seems so far to be Windows specific is an encoding issue, given the trigger.
I haven't seen this since fixing the couple of gaps in model access, so perhaps this is resolved. Leaving open so that we take another look and try hard to reproduce before release.
Closing, still can't reproduce.
This seems to still happen on Windows: 413363: stack overflow https://bugs.eclipse.org/bugs/show_bug.cgi?id=413363