4 Replies Latest reply on May 31, 2009 10:55 AM by ariekenb

    FUSE ESB 4.1.0.0: Installer hangs and exceptions on startup

    ariekenb

      1. I'm attempting to install FUSE ESB 4.1.0.0 on a 64-bit Ubuntu 9.04 system.  When I run fuse-esb-4.1.0.0-unix.bin, I see this error on the console:

       

      nawk: error while loading shared libraries: libm.so.6: cannot open shared object file: No such file or directory

       

      The installer runs and I step through the wizard.  Eventually it says "Installing... uninstall-fuse-esb" and the installer hangs.  It appears the fuse-esb-4.1.0.0 directory is created and the install actually works, but it worries me that the installer is hanging.  I've tried this with Sun JDK 1.5.0_18 and 1.6.0_13 with the same results.

       

      2. If I run servicemix without making any changes to the default configuration, there are 88 NullPointerExceptions in data/log/servicemix.log related to the "ManagedFeaturesRegistry".  The stack traces all look the same, I've pasted one below.

       

      Am I missing something?  I'm not sure how I could have broken something without making any changes after the install.

       

       

       

      $ egrep -c 'ManagedFeaturesRegistry.*NullPointerException' servicemix.log

      88

       

       

       

      06:42:18,420 | WARN  | FelixStartLevel  | ManagedFeaturesRegistry          | nagement.ManagedFeaturesRegistry  105 | Unable to register managed feature: java.lang.NullPointerException
      java.lang.NullPointerException
      at org.apache.servicemix.kernel.gshell.features.management.ManagedFeaturesRegistry.register(ManagedFeaturesRegistry.java:102)
      at org.apache.servicemix.kernel.gshell.features.management.ManagedFeaturesRegistry.register(ManagedFeaturesRegistry.java:150)
      at org.apache.servicemix.kernel.gshell.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:132)
      at org.apache.servicemix.kernel.gshell.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:392)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1414)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1375)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:126)
      at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:479)
      at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:162)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:219)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:122)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:219)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:122)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:126)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
      at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:68)
      at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:343)
      at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
      at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:308)
      at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:138)
      at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
      at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageTwo(DependencyWaiterApplicationContextExecutor.java:304)
      at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiterApplicationContextExecutor.java:246)
      at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.refresh(DependencyWaiterApplicationContextExecutor.java:168)
      at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegatedExecutionApplicationContext.java:179)
      at org.springframework.osgi.extender.internal.activator.ContextLoaderListener$2.run(ContextLoaderListener.java:759)
      at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
      at org.springframework.osgi.extender.internal.activator.ContextLoaderListener.maybeCreateApplicationContextFor(ContextLoaderListener.java:806)
      at org.springframework.osgi.extender.internal.activator.ContextLoaderListener$ContextBundleListener.handleEvent(ContextLoaderListener.java:233)
      at org.springframework.osgi.extender.internal.activator.ContextLoaderListener$BaseListener.bundleChanged(ContextLoaderListener.java:176)
      at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:771)
      at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:700)
      at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:597)
      at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3382)
      at org.apache.felix.framework.Felix.startBundle(Felix.java:1517)
      at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:984)
      at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:263)
      at java.lang.Thread.run(Thread.java:619)

       

        • 1. Re: FUSE ESB 4.1.0.0: Installer hangs and exceptions on startup
          ubhole
          ariekenb wrote:

          1. I'm attempting to install FUSE ESB 4.1.0.0 on a 64-bit Ubuntu 9.04 system.  When I run fuse-esb-4.1.0.0-unix.bin, I see this error on the console:

           

          nawk: error while loading shared libraries: libm.so.6: cannot open shared object file: No such file or directory

          Can you try on one of the [supported platforms|

          http://fusesource.com/downloads/platforms-supported] ? also as far as nawk error you have seen doesn't affect the installer/installed product in any way.

           

          The installer runs and I step through the wizard.  Eventually it says "Installing... uninstall-fuse-esb" and the installer hangs.  It appears the fuse-esb-4.1.0.0 directory is created and the install actually works, but it worries me that the installer is hanging.  I've tried this with Sun JDK 1.5.0_18 and 1.6.0_13 with the same results.

           

          2. If I run servicemix without making any changes to the default configuration, there are 88 NullPointerExceptions in data/log/servicemix.log related to the "ManagedFeaturesRegistry".  The stack traces all look the same, I've pasted one below.

           

          Also, hanged installer means the installation may have missing or incorrectly configured pieces so it's better to try clean installation with JRE 1.5/1.6 as your JAVA_HOME and JRE/bin in the path before any other JAVA version for installation process?

           

          I have successfully installed FUSE ESB 4.1 mutiple times on ubuntu 8.04 64 bit edition.

           

          /Ulhas

          • 2. Re: FUSE ESB 4.1.0.0: Installer hangs and exceptions on startup
            ariekenb

            Sorry, Ubuntu 9.04 64-bit is all I have access to at the moment.

             

            I have discovered something interesting on the installer hang problem, hopefully someone who understands how the installer works can interpret what this means:

             

            I set my JAVA_HOME to Sun JDK 1.5.0_18 and put it first in my PATH:

            ~$ echo $JAVA_HOME
            /usr/lib/jvm/java-1.5.0-sun-1.5.0.18/
            ~$ echo $PATH
            /usr/lib/jvm/java-1.5.0-sun-1.5.0.18/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

            Then I run the installer:

            ~$ sh fuse-esb-4.1.0.0-unix.bin

            It gets to the point where the GUI says "Installing... uninstall-fuse-esb" and sits there.

             

            I notice a file is created in /tmp named cbe.62139c3f12177baf730.  It appears to be a shell script that does a bunch of chmod commands on files in the fuse installation to make them executable.   Then it echo's the result to /tmp/cbe_62139c3f12177baf730.exit, apparently to signal the installer that it's done.

             

            If I try to run this script manually, there are errors in it:

            /tmp$ sh cbe.62139c3f12177baf730
            cbe.62139c3f12177baf730: 485: Bad substitution

            What's on line 485 - a path containing variables that are not defined (${artifact.baseVersion}, ${dashClassifier?}, and ${artifact-features.extension}.  Here are lines 485 and 486 of /tmp/cbe.62139c3f12177baf730

            chmod 0775 "/home/aaron/fuse-esb-4.1.0.0/system/org/apache/servicemix/camel/apache-servicemix/${artifact.baseVersion}/apache-servicemix-${artifact.baseVersion}${dashClassifier?}.${artifact-features.extension}"
            chmod 0775 "/home/aaron/fuse-esb-4.1.0.0/system/org/apache/servicemix/camel/apache-servicemix/${artifact.baseVersion}"

            There are 4 total lines containing paths with undefined variables (485, 486, 572, 573).

             

            If I just comment out these lines, then run cbe.62139c3f12177baf730 again (while the installer is still stuck at "Installing... uninstall-fuse-esb") this causes the installer to resume doing stuff and it eventually finishes.

             

            By the way, it looks like there are paths being created by the installer that contain unexpanded variable names like ${artifact.baseVersion}.  Not sure if this is correct, but it looks strange:

            ~/fuse-esb-4.1.0.0$ find . -name '${artifact.baseVersion}'
            ./system/org/apache/servicemix/camel/apache-servicemix/${artifact.baseVersion}
            ./system/org/apache/servicemix/nmr/apache-servicemix/${artifact.baseVersion}

             

            • 3. Re: FUSE ESB 4.1.0.0: Installer hangs and exceptions on startup
              ariekenb

              Ok, just tried installing on a Windows XP machine (a "supported platform").  The installer did not hang, but as on my Ubuntu box I get directories created with unexpanded variable names:

              system/org/apache/servicemix/camel/apache-servicemix/${artifact.baseVersion}
              system/org/apache/servicemix/nmr/apache-servicemix/${artifact.baseVersion}

              My guess is something is a bit wrong in this release that is causing these directories not to have these variables expanded correctly.  I suspect this is what's causing the installer to hang in Ubuntu because it causes the /tmp/cbe.XXX script to fail.  Apparently the installer in Windows XP is able to deal with these odd paths, probably because Windows doesn't try to expand the variable names.

              • 4. Re: FUSE ESB 4.1.0.0: Installer hangs and exceptions on startup
                ariekenb

                Looks like the first problem of ${artifact.baseVersion} directories being created that cause the installer to hang is issue ESB-702.

                 

                Second problem of NullPointerExceptions on startup is ESB-684.

                 

                Edited by: ariekenb on May 31, 2009 2:54 PM