Bug 520746 - AbstractDataTree.handleNotFound crashes Eclipse startup
Summary: AbstractDataTree.handleNotFound crashes Eclipse startup
Status: CLOSED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Resources (show other bugs)
Version: 3.8.2   Edit
Hardware: PC All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-Resources-Inbox CLA
QA Contact:
URL:
Whiteboard: stalebug
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-09 08:07 EDT by Ralf Hauser CLA
Modified: 2020-01-25 15:26 EST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ralf Hauser CLA 2017-08-09 08:07:50 EDT
in the log, I see

!SESSION 2017-08-09 13:51:03.373 -----------------------------------------------
eclipse.buildId=4.7.0.I20170612-0950
java.version=1.8.0_112
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.core.resources 2 10035 2017-08-09 13:51:11.996
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

!ENTRY org.eclipse.osgi 4 0 2017-08-09 13:51:14.443
!MESSAGE An error occurred while automatically activating bundle org.eclipse.core.resources (123).
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:800)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729)
	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933)
	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309)
	at org.eclipse.osgi.container.Module.doStart(Module.java:581)
...
	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element '/privaLope-common/classes/sun/security/validator/SimpleValidatorPSPH.class' not found.
	at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:257)
	at org.eclipse.core.internal.dtree.DeltaDataTree.getData(DeltaDataTree.java:596)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:51)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(DeltaDataTree.java:88)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:832)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
	at org.eclipse.core.internal.watson.ElementTree.immutable(ElementTree.java:519)
	at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:742)
	at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1587)
	at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2399)
	at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2156)
...
	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element '/privaLope-common/classes/sun/security/validator/SimpleValidatorPSPH.class' not found.
	at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:257)
	at org.eclipse.core.internal.dtree.DeltaDataTree.getData(DeltaDataTree.java:596)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:51)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(DeltaDataTree.java:88)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:832)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
	at org.eclipse.core.internal.watson.ElementTree.immutable(ElementTree.java:519)
	at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:742)
	at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1587)
	at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2399)
	at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2156)
...
	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element '/privaLope-common/classes/sun/security/validator/SimpleValidatorPSPH.class' not found.
	at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:257)
	at org.eclipse.core.internal.dtree.DeltaDataTree.getData(DeltaDataTree.java:596)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:51)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(DeltaDataTree.java:88)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:832)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
	at org.eclipse.core.internal.watson.ElementTree.immutable(ElementTree.java:519)
	at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:742)
	at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1587)
	at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2399)
	at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2156)
...
	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element '/privaLope-common/classes/sun/security/validator/SimpleValidatorPSPH.class' not found.
	at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:257)
	at org.eclipse.core.internal.dtree.DeltaDataTree.getData(DeltaDataTree.java:596)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:51)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(NoDataDeltaNode.java:60)
	at org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(DataDeltaNode.java:48)
	at org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(DeltaDataTree.java:88)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:832)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:831)
	at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
	at org.eclipse.core.internal.watson.ElementTree.immutable(ElementTree.java:519)
	at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:742)
	at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1587)
	at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2399)
	at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2156)
...
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 14 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:800)
...
	at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:103)
	... 23 more
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element '/privaLope-common/classes/sun/security/validator/SimpleValidatorPSPH.class' not found.
	at org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(AbstractDataTree.java:257)
Comment 1 Andrey Loskutov CLA 2017-08-09 08:23:18 EDT
I believe this code is there since ever. The error during the restore on "inconsistent" workspace state seem to affect startup in a bad way. See also bug 132220.
Comment 2 Ralf Hauser CLA 2017-08-09 08:59:43 EDT
Just as a quick&dirty work-around:

1) is there a command line paramater to tell eclipse no to attempt the recovery of the crash-corrupted files that might still lie around after the last crash of my old eclipse.mars ?
2) if not, is there an easy manual way to "rm -rf" some directory tree where the corrupted files are lieing around ==> once they are gone, perhaps my newest eclipse will start again ?

Many thanks in advance!



original subject. <<Latest jee-oxygen refuses to start: An error has occurred. See the log file ... workspace/.metadata/.log>>
Comment 3 Ralf Hauser CLA 2017-08-09 09:08:41 EDT
see also Bug 520753
Comment 4 Ralf Hauser CLA 2017-08-09 09:33:06 EDT
3) at least suggest to rename the .snap in the GUI as per Bug 520753 comment 1
Comment 5 Andrey Loskutov CLA 2017-08-09 14:38:27 EDT
(In reply to Ralf Hauser from comment #4)
> 3) at least suggest to rename the .snap in the GUI as per Bug 520753 comment
> 1

I wonder if we should guard Workspace.startup code from exceptions and instead of the dumb crash open a dialog: "Workspace data seem to be corrupted. Do you want to recover and restart? With two choices: "recover" and "exit". On recover we would try to do some cleanup work (rename snap file, whatever it is). 

WDYT?
Comment 6 Eclipse Genie CLA 2020-01-25 15:26:26 EST
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug.

If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.