Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 359918

Summary: Persistent saving of framework state appears to be disabled if an exception occurs at the wrong time
Product: [Eclipse Project] Equinox Reporter: Erin Schnabel <ebullient.rain>
Component: FrameworkAssignee: Thomas Watson <tjwatson>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: P3 CC: tjwatson
Version: unspecified   
Target Milestone: Kepler   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Erin Schnabel CLA 2011-10-04 16:41:40 EDT
Build Identifier: 

if something happens like bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=359294 then the persistent saving of framework state seems to be disabled.

This leads to very strange behavior: bundles that were supposedly uninstalled are actually still alive and in the framework after restart, despite being uninstalled. (i.e. no apparent failure indicating that uninstall failed.. )

This is based on a post-mortem with Tom... 

Reproducible: Didn't try
Comment 1 Thomas Watson CLA 2011-10-04 17:03:11 EDT
We should be more protective in the state saver thread to make sure that all state saving is disabled on runtime exception during one save.
Comment 2 Thomas Watson CLA 2012-03-05 16:24:18 EST
Upon further review I am not sure what improvements we need to make here.  Erin, I assume you always ensure the framework is shutdown?  That should force the .bundledata to be written with the very latest information even if an exception is thrown while writing the .state .lazy.  So far I have not figured out how to reproduce the strange behavior you describe.
Comment 3 Thomas Watson CLA 2013-02-11 13:53:51 EST
Returning as works for me.  I was unable to reproduce the issue.