Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-2383

Bundles are restarted during start level change

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

      Description

      When shutting down felix, some bundles get started again during shutdown: Can be reproduced like this:

      install felix in a fresh directory.
      Put configadmin-1.2.4, shell-1.4.0 and fileinstall-3.0.0 in bundle directory.
      Put pax-logging-api-1.5 and pax-logging-service-1.5 in load directory.
      Put a .cfg file to configure logging in load directory.

      Start felix.
      Stop felix.

      The log output shows that bundles are stopped, and the started again. Felix outputs IllegalStateExceptions: Zipfile is closed during shutdown.

      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , framework ] BundleEvent STOPPED
      [INFO , 06/03-13:17:49, FelixStartLevel , Activator ] Disabling SLF4J API support.
      [INFO , 06/03-13:17:49, FelixStartLevel , Activator ] Disabling Jakarta Commons Logging API support.
      [INFO , 06/03-13:17:49, FelixStartLevel , Activator ] Disabling Log4J API support.
      [INFO , 06/03-13:17:49, FelixStartLevel , Activator ] Disabling Avalon Logger API support.
      [INFO , 06/03-13:17:49, FelixStartLevel , Activator ] Disabling JULI Logger API support.
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , pax-logging-service ] BundleEvent STARTED <--- HERE **********
      [DEBUG, 06/03-13:17:49, FelixStartLevel , configadmin ] Scheduling task Thread[Configuration Updater,5,main]
      [INFO , 06/03-13:17:49, fileinstall-load , Activator ] Enabling SLF4J API support.
      [INFO , 06/03-13:17:49, fileinstall-load , Activator ] Enabling Jakarta Commons Logging API support.
      [INFO , 06/03-13:17:49, fileinstall-load , Activator ] Enabling Log4J API support.
      [INFO , 06/03-13:17:49, fileinstall-load , Activator ] Enabling Avalon Logger API support.
      [INFO , 06/03-13:17:49, fileinstall-load , Activator ] Enabling JULI Logger API support.
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , pax-logging-api ] BundleEvent STARTED
      [DEBUG, 06/03-13:17:49, FelixStartLevel , configadmin ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , configadmin ] BundleEvent STOPPED
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , compendium ] BundleEvent STOPPED
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , remote ] BundleEvent STOPPED
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , shell ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , shell ] BundleEvent STOPPED
      [DEBUG, 06/03-13:17:49, FelixStartLevel , fileinstall ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixStartLevel , fileinstall ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixDispatchQueue , fileinstall ] BundleEvent STOPPED
      [DEBUG, 06/03-13:17:49, FelixShutdown , framework ] ServiceEvent UNREGISTERING
      [DEBUG, 06/03-13:17:49, FelixShutdown , framework ] ServiceEvent UNREGISTERING

      java.lang.IllegalStateException: zip file closed
      at java.util.zip.ZipFile.ensureOpen(ZipFile.java:403)
      at java.util.zip.ZipFile.getEntry(ZipFile.java:148)
      at java.util.jar.JarFile.getEntry(JarFile.java:206)
      at org.apache.felix.framework.util.JarFileX.getEntry(JarFileX.java:61)
      at org.apache.felix.framework.cache.JarContent.getEntryAsBytes(JarContent.java:120)
      at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.findClass(ModuleImpl.java:1781)
      at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:758)
      at org.apache.felix.framework.ModuleImpl.access$100(ModuleImpl.java:61)
      at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1733)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
      at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:674)
      at org.apache.felix.framework.ServiceRegistrationImpl$ServiceReferenceImpl.isAssignableTo(ServiceRegistrationImpl.java:470)
      at org.apache.felix.framework.util.Util.isServiceAssignable(Util.java:224)
      at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:848)
      at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:732)
      at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:662)
      at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3623)
      at org.apache.felix.framework.Felix.access$000(Felix.java:39)
      at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:667)
      at org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:124)
      at org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:129)
      at org.apache.felix.framework.PackageAdminActivator.stop(PackageAdminActivator.java:44)
      at org.apache.felix.framework.util.SecureAction.stopActivator(SecureAction.java:683)
      at org.apache.felix.framework.Felix$SystemBundleActivator.run(Felix.java:4168)
      at java.lang.Thread.run(Thread.java:619)

      If i put the pax-logging bundles in the bundle directory, felix shuts down clean

        Attachments

          Activity

            People

            • Assignee:
              rickhall Richard S. Hall
              Reporter:
              prange Atle Prange

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment