Bug 193716 - Multiple bundles generations left after bundles update.
Summary: Multiple bundles generations left after bundles update.
Status: RESOLVED WORKSFORME
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Framework (show other bugs)
Version: 3.1.2   Edit
Hardware: All All
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: equinox.framework-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2007-06-21 09:36 EDT by Rafal Adamczyk CLA
Modified: 2007-07-30 11:58 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rafal Adamczyk CLA 2007-06-21 09:36:41 EDT
At first there was a system installed with all needed bundles.
During the normal lifecycle of product there was an update of bundles which was finished ok and all bundles worked after this.
The second upgrade was done a few days later but unfortunately it caused some Framework errors:
SEVERE: FrameworkEvent ERROR
java.util.zip.ZipException: No such file or directory <path_removed>../../conf/org.eclipse.osgi/bundles/57/2/bundlefile
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java(Compiled Code))
        at java.util.zip.ZipFile.<init>(ZipFile.java(Inlined Compiled Code))
        at org.eclipse.osgi.framework.util.SecureAction.getZipFile(SecureAction.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.BundleFile$ZipBundleFile.basicOpen(BundleFile.java(Inlined Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.BundleFile$ZipBundleFile.getZipFile(BundleFile.java(Inlined Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.BundleFile$ZipBundleFile.checkedOpen(BundleFile.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.BundleFile$ZipBundleFile.getEntry(BundleFile.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.BundleFile.getResourceURL(BundleFile.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findResourceImpl(DefaultClassLoader.java(Inlined Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findResourceImpl(DefaultClassLoader.java(Inlined Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findResource(DefaultClassLoader.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalResource(AbstractClassLoader.java(Compiled Code))
        at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalResource(BundleLoader.java(Compiled Code))
        at org.eclipse.osgi.framework.internal.core.BundleLoader.findResource(BundleLoader.java(Compiled Code))
        at org.eclipse.osgi.framework.internal.core.BundleLoader.findResource(BundleLoader.java(Compiled Code))
        at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.getResource(AbstractClassLoader.java(Inlined Compiled Code))
        at org.eclipse.core.runtime.adaptor.EclipseClassLoader.getResource(EclipseClassLoader.java(Compiled Code))
        at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java(Inlined Compiled Code))
        at javax.xml.parsers.SecuritySupport12$4.run(Unknown Source)
        at java.security.AccessController.doPrivileged1(Native Method)
        at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
        at javax.xml.parsers.SecuritySupport12.getResourceAsStream(Unknown Source)
        at javax.xml.parsers.FactoryFinder.findJarServiceProvider(Unknown Source)
        at javax.xml.parsers.FactoryFinder.find(Unknown Source)
        at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
        at java.beans.XMLDecoder.<init>(XMLDecoder.java(Compiled Code))
        at java.beans.XMLDecoder.<init>(XMLDecoder.java(Inlined Compiled Code))
        at java.beans.XMLDecoder.<init>(XMLDecoder.java(Inlined Compiled Code))
        at com.ibm.scheduling.jea.persistence.XMLJobStore.queryJobFile(XMLJobStore.java(Compiled Code))

After that looking at the cache structure we've discovered multiple bundle generations for many bundles updated during second upgrade.
Here is the cache tree of one of the bundles.
|-- 57
|   |-- 2
|   |   `-- .cp
|   |       |-- CASUtils.jar
...
|   |       `-- ecore.xmi.jar
|   |-- 3
|   |   |-- .cp
|   |   |   |-- CASUtils.jar
...
|   |   |   `-- ecore.xmi.jar
|   |   `-- bundlefile
|   `-- data
|       `-- bundle.properties

We are trying to investigate the problem to get more details about the cause of the problem. There is no delete file in the second generation.
Comment 1 Thomas Watson CLA 2007-07-30 11:58:16 EDT
Need more information.  I have not been able to reproduce.  Have you been able to reproduce this issue?