4 Replies Latest reply on Apr 10, 2009 4:07 AM by Jeff Zhang

    MBeanRegistration  (ProfileService test configuration shut d

    Anil Saldanha Master

      Scott, I see that the profile service test configuration shut down > 10secs. This was just my first run.

      When I look in the log, I see 3 exceptions in unregistering mbeans. I paste one of them.

      2008-10-10 11:25:30,635 DEBUG [org.jboss.system.ServiceCreator] (JBoss Shutdown Hook) Removing mbean from server: jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB
      2008-10-10 11:25:30,635 DEBUG [org.jboss.system.ServiceCreator] (JBoss Shutdown Hook) Error unregistering mbean jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB
      javax.management.InstanceNotFoundException: jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB is not registered.
       at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:529)
       at org.jboss.mx.server.MBeanServerImpl.unregisterMBean(MBeanServerImpl.java:383)
       at org.jboss.system.ServiceCreator.uninstall(ServiceCreator.java:309)
       at org.jboss.system.microcontainer.OnlyUnregisterAction.uninstallAction(OnlyUnregisterAction.java:45)
       at org.jboss.system.microcontainer.OnlyUnregisterAction.uninstallAction(OnlyUnregisterAction.java:35)
      


      ServiceCreator is trying to deregister the mbean when it has already been deregistered. Why? :)

      2008-10-10 11:23:18,600 DEBUG [org.jboss.ejb.plugins.StatelessSessionInstancePool] (WorkerThread#1[127.0.0.1:59636]) Destroyed jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB
      2008-10-10 11:23:18,600 DEBUG [org.jboss.ejb.StatelessSessionContainer] (WorkerThread#1[127.0.0.1:59636]) Destroyed jboss.j2ee:jndiName=Bean1EJB,service=EJB
      2008-10-10 11:23:18,600 DEBUG [org.jboss.system.ServiceController] (WorkerThread#1[127.0.0.1:59636]) removing service: jboss.j2ee:jndiName=Bean1EJB,service=EJB
      2008-10-10 11:23:18,600 DEBUG [org.jboss.system.ServiceCreator] (WorkerThread#1[127.0.0.1:59636]) Removing mbean from server: jboss.j2ee:jndiName=Bean1EJB,service=EJB
      2008-10-10 11:23:18,601 INFO [org.jboss.ejb.EjbModule] (WorkerThread#1[127.0.0.1:59636]) Undeployed Bean1EJB
      2008-10-10 11:23:18,601 DEBUG [org.jboss.ejb.EjbModule] (WorkerThread#1[127.0.0.1:59636]) Destroyed jboss.j2ee:service=EjbModule,module="testdeployers-bean1ejb.jar"
      2008-10-10 11:23:18,601 DEBUG [org.jboss.system.ServiceController] (WorkerThread#1[127.0.0.1:59636]) removing service: jboss.j2ee:service=EjbModule,module="testdeployers-bean1ejb.jar"
      



        • 1. Re: MBeanRegistration  (ProfileService test configuration sh
          Anil Saldanha Master

          This issue may not be only part of the profile service configuration. I am just posing a question because the mc may have some stale information about mbeans that need to be unregistered (microcontainer.OnlyUnregisterAction.uninstallAction)

          • 2. Re: MBeanRegistration  (ProfileService test configuration sh
            Scott Stark Master

            It has to be a general issue as the profile service does not do any component creation. Its just feeding deployments to the main deployer. Either the ejb container is duplicately removing the pool mbean, or there is some issue with how its being handled by the service mbean layer.

            • 4. Re: MBeanRegistration  (ProfileService test configuration sh
              Jeff Zhang Newbie

              This issue is still existing.

              How to reproduce:
              1. start default profile with set log level > DEBUG
              2. copy a file from testsuite/output/lib/bean1ejb-not.ajar, rename it bean1ejb-not.jar, copy into deploy directory
              3. ejb deployed and delete that jar to make undeployed
              4. shutdown server instance and we can get the issue log nearby end of the server.log


              2009-04-10 09:06:57,478 DEBUG [org.jboss.system.ServiceCreator] (JBoss Shutdown Hook) Error unregistering mbean
              jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB
              javax.management.InstanceNotFoundException: jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB is not registered.
              at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:529)
              at org.jboss.mx.server.MBeanServerImpl.unregisterMBean(MBeanServerImpl.java:383)
              at org.jboss.system.ServiceCreator.uninstall(ServiceCreator.java:323)
              ...

              The issue:
              EjbModule.destroyService()
               serviceController.destroy(jmxName);
               serviceController.remove(jmxName);
              

              here jmxName is jboss.j2ee:jndiName=Bean1EJB,service=EJB
              in SessionContainer.destroyService
               destroyInstancePool();
              

              it also destroy jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB
              but it does NOT remove jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB in remove method.

              When server shutdown, it try to find jboss.j2ee:service=EJB,plugin=pool,jndiName=Bean1EJB, the exception throws.

              Any suggestion about how to fix it?