File suddenly corrupted - NodeGraphAnnotation error

Hello,


 

I've got a rather nasty problem.  After a sudden crash of KNIME, a particular workflow.knime file is now unreadable, giving this error:

java.lang.RuntimeException: java.lang.AssertionError: Failed to find NodeGraphAnnotation for node from this very workflow.
	at org.knime.workbench.editor2.WorkflowEditor.setInput(WorkflowEditor.java:892)
	at org.knime.workbench.editor2.WorkflowEditor.init(WorkflowEditor.java:369)
	at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:828)
	at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:647)
	at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
	at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
	at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2945)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2850)
	at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2842)
	at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2793)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2789)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2773)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2756)
	at org.eclipse.ui.ide.IDE.openEditorOnFileStore(IDE.java:1155)
	at org.knime.workbench.ui.navigator.KnimeResourceNavigator.handleOpen(KnimeResourceNavigator.java:457)
	at org.knime.workbench.ui.navigator.KnimeResourceNavigator$3$1.run(KnimeResourceNavigator.java:290)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
	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.knime.product.rcp.KNIMEApplication.start(KNIMEApplication.java:128)
	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:344)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	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:622)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: java.lang.AssertionError: Failed to find NodeGraphAnnotation for node from this very workflow.
	at org.knime.core.node.workflow.Workflow.getMatchingLoopStart(Workflow.java:1359)
	at org.knime.core.node.workflow.WorkflowManager.resetAndConfigureAffectedLoopContext(WorkflowManager.java:4055)
	at org.knime.core.node.workflow.WorkflowManager.resetAndConfigureAffectedLoopContext(WorkflowManager.java:4039)
	at org.knime.core.node.workflow.WorkflowManager.resetSuccessors(WorkflowManager.java:4178)
	at org.knime.core.node.workflow.WorkflowManager.resetSuccessors(WorkflowManager.java:4149)
	at org.knime.core.node.workflow.WorkflowManager.resetSuccessors(WorkflowManager.java:4123)
	at org.knime.core.node.workflow.WorkflowManager.sweep(WorkflowManager.java:7199)
	at org.knime.core.node.workflow.WorkflowManager.postLoad(WorkflowManager.java:6943)
	at org.knime.core.node.workflow.WorkflowManager.loadContent(WorkflowManager.java:6723)
	at org.knime.core.node.workflow.WorkflowManager.postLoad(WorkflowManager.java:6827)
	at org.knime.core.node.workflow.WorkflowManager.loadContent(WorkflowManager.java:6723)
	at org.knime.core.node.workflow.WorkflowManager.postLoad(WorkflowManager.java:6827)
	at org.knime.core.node.workflow.WorkflowManager.loadContent(WorkflowManager.java:6723)
	at org.knime.core.node.workflow.WorkflowManager.load(WorkflowManager.java:6621)
	at org.knime.core.node.workflow.WorkflowManager.load(WorkflowManager.java:6568)
	at org.knime.core.node.workflow.WorkflowManager.loadProject(WorkflowManager.java:6332)
	at org.knime.workbench.editor2.LoadWorkflowRunnable.run(LoadWorkflowRunnable.java:163)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)

 

I'm finding it difficult to debug this and thus can't pinpoint the exact area in the said xml/knime file that's causing this.  I can only assume that a reference to annotation, means that one of the node's names that I assigned is missing? 

 

Attached is the xml file.

 

Thank you in advance,

Ed.

 

Hi Edu

I can't see any error in the workflow.knime file. It seems te be parsed without problems but then fails with follow-up problems. Can you also provide us with the rest of the workflow? (Not only the workflow.knime but the whole directory?)

Thanks,

 Bernd

Have you tried creating a new workspace, selecting import workflows, and then pointing the dialog to the old workspace and selecting your old workflow?

Sometimes that fixes seemingly corrupted workflows...

Steve