Community
Participate
Working Groups
Build id: N20081102-2000 Synchronize with HEAD. About every 2nd or 3rd attempt to compare a file, an error dialog opens and the compare editor does not open. Here is the stack trace from the .log file: !ENTRY org.eclipse.ui 2 2 2008-11-03 12:24:18.838 !MESSAGE Ignored attempt to add saveable that was already registered !STACK 0 org.eclipse.core.runtime.AssertionFailedException: unknown saveable: org.eclipse.team.ui.synchronize.SaveableCompareEditorInput$InternalResourceSaveableComparison@b4acd 4 from part: org.eclipse.compare.internal.CompareEditor@f0add9 at org.eclipse.ui.internal.SaveablesList.logWarning(SaveablesList.java:187) at org.eclipse.ui.internal.SaveablesList.addModel(SaveablesList.java:117) at org.eclipse.ui.internal.SaveablesList.addModels(SaveablesList.java:289) at org.eclipse.ui.internal.SaveablesList.handleLifecycleEvent(SaveablesList.java:221) at org.eclipse.compare.internal.CompareEditor.registerSaveable(CompareEditor.java:313) at org.eclipse.compare.internal.CompareEditor.access$4(CompareEditor.java:311) at org.eclipse.compare.internal.CompareEditor$3.run(CompareEditor.java:365) at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:155) at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:2891) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2659) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:173) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:382) at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507) at org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:275) at org.eclipse.ui.internal.progress.ProgressManager$3.run(ProgressManager.java:977) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:1012) at org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:987) at org.eclipse.ui.internal.progress.ProgressManager.run(ProgressManager.java:1195) at org.eclipse.compare.internal.CompareContainer.run(CompareContainer.java:80) at org.eclipse.compare.CompareEditorInput.run(CompareEditorInput.java:1118) at org.eclipse.compare.internal.merge.DocumentMerger.doDiff(DocumentMerger.java:435) at org.eclipse.compare.contentmergeviewer.TextMergeViewer.doDiff(TextMergeViewer.java:2929) at org.eclipse.compare.contentmergeviewer.TextMergeViewer.update(TextMergeViewer.java:4624) at org.eclipse.compare.contentmergeviewer.TextMergeViewer.updateContent(TextMergeViewer.java:2536) at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.internalRefresh(ContentMergeViewer.java:715) at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.inputChanged(ContentMergeViewer.java:615) at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:274) at org.eclipse.jdt.internal.ui.compare.JavaMergeViewer.setInput(JavaMergeViewer.java:131) at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:256) at org.eclipse.compare.CompareEditorInput.internalSetContentPaneInput(CompareEditorInput.java:791) at org.eclipse.compare.CompareEditorInput.access$7(CompareEditorInput.java:789) at org.eclipse.compare.CompareEditorInput$13.run(CompareEditorInput.java:729) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.compare.CompareEditorInput.feed1(CompareEditorInput.java:723) at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:701) at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:524) at org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:443) at org.eclipse.compare.internal.CompareEditor.access$6(CompareEditor.java:412) at org.eclipse.compare.internal.CompareEditor$4.run(CompareEditor.java:464) at org.eclipse.swt.widgets.Display.timerProc(Display.java:3407) at org.eclipse.swt.widgets.Display.windowDelegateProc(Display.java:3784) at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method) at org.eclipse.swt.widgets.Display.applicationNextEventMatchingMask(Display.java:3499) at org.eclipse.swt.widgets.Display.applicationProc(Display.java:3640) at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method) at org.eclipse.swt.internal.cocoa.NSApplication.nextEventMatchingMask(NSApplication.java:63) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2643) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:333) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) 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:370) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) !ENTRY org.eclipse.jface 4 2 2008-11-03 12:24:28.630 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface". !STACK 0 java.lang.IllegalArgumentException at org.eclipse.core.runtime.ListenerList.remove(ListenerList.java:155) at org.eclipse.team.ui.mapping.SaveableComparison.removePropertyListener(SaveableComparison.java:80) at org.eclipse.team.ui.synchronize.SaveableCompareEditorInput.handleDispose(SaveableCompareEditorInput.java:217) at org.eclipse.team.internal.ui.mapping.ModelCompareEditorInput.handleDispose(ModelCompareEditorInput.java:83) at org.eclipse.compare.CompareEditorInput$4.widgetDisposed(CompareEditorInput.java:528) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:117) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1097) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1121) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1102) at org.eclipse.swt.widgets.Widget.release(Widget.java:962) at org.eclipse.swt.widgets.Widget.dispose(Widget.java:492) at org.eclipse.compare.internal.CompareEditor.doSetInput(CompareEditor.java:273) at org.eclipse.compare.internal.CompareEditor.setInput(CompareEditor.java:244) at org.eclipse.compare.internal.CompareUIPlugin$1.run(CompareUIPlugin.java:492) at org.eclipse.compare.internal.CompareUIPlugin.syncExec(CompareUIPlugin.java:1219) at org.eclipse.compare.internal.CompareUIPlugin.internalOpenEditor(CompareUIPlugin.java:513) at org.eclipse.compare.internal.CompareUIPlugin.openEditorInBackground(CompareUIPlugin.java:483) at org.eclipse.compare.internal.CompareUIPlugin.openCompareEditor(CompareUIPlugin.java:472) at org.eclipse.compare.CompareUI.reuseCompareEditor(CompareUI.java:199) at org.eclipse.compare.CompareUI.reuseCompareEditor(CompareUI.java:180) at org.eclipse.team.internal.ui.synchronize.actions.OpenInCompareAction.openCompareEditor(OpenInCompareAction.java:206) at org.eclipse.team.internal.ui.synchronize.actions.OpenInCompareAction.openCompareEditor(OpenInCompareAction.java:169) at org.eclipse.team.internal.ui.synchronize.actions.OpenInCompareAction.openCompareEditor(OpenInCompareAction.java:113) at org.eclipse.team.internal.ui.synchronize.actions.OpenInCompareAction.run(OpenInCompareAction.java:65) at org.eclipse.team.ui.synchronize.ModelSynchronizeParticipantActionGroup$1.run(ModelSynchronizeParticipantActionGroup.java:103) at org.eclipse.team.internal.ui.synchronize.StructuredViewerAdvisor.handleOpen(StructuredViewerAdvisor.java:171) at org.eclipse.team.internal.ui.synchronize.StructuredViewerAdvisor.access$0(StructuredViewerAdvisor.java:167) at org.eclipse.team.internal.ui.synchronize.StructuredViewerAdvisor$3.open(StructuredViewerAdvisor.java:131) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:874) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079) at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:372) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1097) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1121) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1106) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:933) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2923) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2656) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:333) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) 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:370) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) wscmacleodmac:.metadata cmacleod$
Might just be a bug in Eclipse, not necessarily cocoa. Does it happen every time?
No - every 2nd or 3rd time.
I've never seen these errors and I use the synchronize view on cocoa a lot. I'm going to move this to Team for comment. Maybe they can give us a hint at least.
I updated my Mac, and the problem persisted. I got a newer version of Eclipse Cocoa, and created a new workspace, and the problem went away. I'm going to close this bug, because it can't be replicated any more.