Uploaded image for project: 'Karaf'
  1. Karaf
  2. KARAF-3798

FeaturesServiceImpl not threadsafe

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.0.0.M3
    • 4.1.0, 4.0.6
    • karaf
    • None

    Description

      This error happens pretty frequently with M3, when there are multiple features installed on startup and config files to activate them created.

      2015-06-19 15:55:12,249 | ERROR | 43-3aaf88a7bd8b) | configadmin                      | 3 - org.apache.felix.configadmin - 1.8.4 | Unexpected problem delivering configuration event to [org.osgi.service.cm.ConfigurationListener, id=30, bundle=9/mvn:org.apache.felix/org.apache.felix.scr/1.8.2]
      java.lang.NullPointerException
      	at org.apache.felix.scr.impl.config.ConfigurationSupport.configurationEvent(ConfigurationSupport.java:283)[9:org.apache.felix.scr:1.8.2]
      	at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.sendEvent(ConfigurationManager.java:2036)[3:org.apache.felix.configadmin:1.8.4]
      	at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.run(ConfigurationManager.java:2005)[3:org.apache.felix.configadmin:1.8.4]
      	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:103)[3:org.apache.felix.configadmin:1.8.4]
      	at java.lang.Thread.run(Thread.java:745)[:1.8.0_40]
      

      As written in latest comment, the root cause seems to be that multiple installFeature calls to FeatureService mess up the state of the bundles. In my case it left a bundle in a corrupt state, which was noticed when the configuration change did not really activate the service.

      Attachments

        Issue Links

          Activity

            People

              jbonofre Jean-Baptiste Onofré
              fabianlange Fabian Lange
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: