13 Replies Latest reply on Nov 30, 2010 2:19 AM by jaikiran pai

    JBoss 6 M4 - Singleton re-deploy fails

    Christian Treptow Newbie

      Hello everyone,

       

      i have a problem with a incomplete deployed @Singleton-annotated bean. I made some mistake and wrote down the false @DependsOn-Beanname and deployed my stuff. This deployment failed with the right errormessage.

      After that i deleted the deployed ear, corrected my sourcecode and redeployed.

      Now these lines appeared in my serverlog:

       

       

      2010-07-29 16:44:32,168 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (HDScanner) Error installing to Real:
       name=vfs:///D:/Dev/EDAP/jboss-6.0.0.M4/server/default/deploy/portal.ear state=PreReal mode=Manual requiredState=Real:
       org.jboss.deployers.spi.DeploymentException: Error deploying: org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData.ParameterHolderImpl
      ...
      Caused by: java.lang.IllegalStateException:
       Container jboss.j2ee:ear=portal.ear,jar=ejb3.jar,name=ParameterHolderImpl,service=EJB3,VMID=ffec768632591eeb:-1f74de0c:12a1ea8141e:-7ffd + is already registered
      

       

      full serverlog can be found here: http://pastebin.com/tCLULLqN

       

      my installation is from base (fresh downloaded M4, no modifications).

      This problem disappears if i restart the JBoss.

       

      How do i get rid of it on runtime without restart; can anyone confirm this behavior?

       

      Chris

        • 1. Re: JBoss 6 M4 - Singleton re-deploy fails
          jaikiran pai Master

          Let me try and reproduce this in a testcase.

          • 2. Re: JBoss 6 M4 - Singleton re-deploy fails
            jaikiran pai Master

            Reproduced in a testcase. This is a bug. I'll work on a fix for this.

            • 4. Re: JBoss 6 M4 - Singleton re-deploy fails
              jaikiran pai Master

              Although, the root cause is still under debate in that other thread, I have managed to fix this in a different way. Here's the relevant JIRA https://jira.jboss.org/browse/EJBTHREE-2136

              • 5. Re: JBoss 6 M4 - Singleton re-deploy fails
                Nicklas Karlsson Master

                BTW, I'm still seeing this in CR1, should the fix be included already?

                • 6. Re: JBoss 6 M4 - Singleton re-deploy fails
                  Nicklas Karlsson Master

                  Or is this something with the scheduled method on my singleton?

                   

                  The trace I'm seeing is

                   

                  [code]

                  BTW, I'm still seeing this in CR1, should the fix be included already?

                   

                  Or is this a separate issue (the singleton has a scheduled method), the stack trace I'm seeing is

                   

                  [code]

                   

                  22:33:16,648 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Create: name=jboss.j2ee:jar=OSTi.war,name=Lukkosiivooja,service=EJB3 state=Configured: java.lang.IllegalStateException: Timer service with timedObjectId: jboss.j2ee:jar=OSTi.war,name=Lukkosiivooja,service=EJB3 is already registered
                  at org.jboss.ejb3.timerservice.mk2.TimerServiceRegistry.registerTimerService(TimerServiceRegistry.java:48) [:1.0.0-alpha-10]
                  at org.jboss.ejb3.timerservice.mk2.TimerServiceFactoryImpl.createTimerService(TimerServiceFactoryImpl.java:81) [:1.0.0-alpha-10]
                  at org.jboss.ejb3.TimerServiceContainer.createTimerService(TimerServiceContainer.java:234) [:1.6.3]
                  at org.jboss.ejb3.TimerServiceContainer.create(TimerServiceContainer.java:107) [:1.6.3]
                  at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.create(AOPBasedSingletonContainer.java:196) [:1.0.0-alpha-16]
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_20]
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_20]
                  at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_20]
                  at org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:60) [jboss-reflect.jar:2.2.0.Alpha9]
                  at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:168) [jboss-reflect.jar:2.2.0.Alpha9]
                  at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66) [jboss-reflect.jar:2.2.0.Alpha9]
                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:257) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:125) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:72) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:202) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654) [jboss-dependency.jar:2.2.0.Alpha10]
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersImpl.java:1983) [:2.2.0.Alpha8]
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:1076) [:2.2.0.Alpha8]
                  at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:679) [:2.2.0.Alpha8]
                  at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.process(MainDeployerPlugin.java:106) [:6.0.0.20101110-CR1]
                  at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.process(ProfileControllerContext.java:130) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.deploy(HDScanner.java:240) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.complete(HDScanner.java:192) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.TwoPCActionWrapper.doComplete(TwoPCActionWrapper.java:59) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.complete(AbstractTwoPhaseModificationAction.java:74) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.prepare(AbstractTwoPhaseModificationAction.java:94) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.ModificationSession.prepare(ModificationSession.java:87) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.AbstractActionController.internalPerfom(AbstractActionController.java:234) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.AbstractActionController.performWrite(AbstractActionController.java:213) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:150) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:135) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner.scan(HDScanner.java:146) [:0.1.0.Alpha1]
                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner.run(HDScanner.java:90) [:0.1.0.Alpha1]
                  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) [:1.6.0_20]
                  at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) [:1.6.0_20]
                  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) [:1.6.0_20]
                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) [:1.6.0_20]
                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181) [:1.6.0_20]
                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205) [:1.6.0_20]
                  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_20]
                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_20]
                  at java.lang.Thread.run(Thread.java:619) [:1.6.0_20]

                  22:33:16,648 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Create: name=jboss.j2ee:jar=OSTi.war,name=Lukkosiivooja,service=EJB3 state=Configured: java.lang.IllegalStateException: Timer service with timedObjectId: jboss.j2ee:jar=OSTi.war,name=Lukkosiivooja,service=EJB3 is already registered

                  at org.jboss.ejb3.timerservice.mk2.TimerServiceRegistry.registerTimerService(TimerServiceRegistry.java:48) [:1.0.0-alpha-10]

                  at org.jboss.ejb3.timerservice.mk2.TimerServiceFactoryImpl.createTimerService(TimerServiceFactoryImpl.java:81) [:1.0.0-alpha-10]

                  at org.jboss.ejb3.TimerServiceContainer.createTimerService(TimerServiceContainer.java:234) [:1.6.3]

                  at org.jboss.ejb3.TimerServiceContainer.create(TimerServiceContainer.java:107) [:1.6.3]

                  at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.create(AOPBasedSingletonContainer.java:196) [:1.0.0-alpha-16]

                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]

                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_20]

                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_20]

                  at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_20]

                  at org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:60) [jboss-reflect.jar:2.2.0.Alpha9]

                  at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:168) [jboss-reflect.jar:2.2.0.Alpha9]

                  at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66) [jboss-reflect.jar:2.2.0.Alpha9]

                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:257) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:125) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:72) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:202) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654) [jboss-dependency.jar:2.2.0.Alpha10]

                  at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersImpl.java:1983) [:2.2.0.Alpha8]

                  at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:1076) [:2.2.0.Alpha8]

                  at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:679) [:2.2.0.Alpha8]

                  at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.process(MainDeployerPlugin.java:106) [:6.0.0.20101110-CR1]

                  at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.process(ProfileControllerContext.java:130) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.deploy(HDScanner.java:240) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.complete(HDScanner.java:192) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.TwoPCActionWrapper.doComplete(TwoPCActionWrapper.java:59) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.complete(AbstractTwoPhaseModificationAction.java:74) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.prepare(AbstractTwoPhaseModificationAction.java:94) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.ModificationSession.prepare(ModificationSession.java:87) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.AbstractActionController.internalPerfom(AbstractActionController.java:234) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.AbstractActionController.performWrite(AbstractActionController.java:213) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:150) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:135) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner.scan(HDScanner.java:146) [:0.1.0.Alpha1]

                  at org.jboss.profileservice.deployment.hotdeploy.HDScanner.run(HDScanner.java:90) [:0.1.0.Alpha1]

                  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) [:1.6.0_20]

                  at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) [:1.6.0_20]

                  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) [:1.6.0_20]

                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) [:1.6.0_20]

                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181) [:1.6.0_20]

                  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205) [:1.6.0_20]

                  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_20]

                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_20]

                  at java.lang.Thread.run(Thread.java:619) [:1.6.0_20]

                   

                  [/code]

                  [/code]

                  • 7. Re: JBoss 6 M4 - Singleton re-deploy fails
                    jaikiran pai Master

                    You shouldn't have seen this in CR1. Can you post a bit more details of that bean and the scenario when this occurs? Do you have multiple beans named Lukkosiivooja (maybe in different jars)?

                    • 8. Re: JBoss 6 M4 - Singleton re-deploy fails
                      Nicklas Karlsson Master

                      There is only one, it is a no-interface, WAR-packed, startup-singleton with a scheduled method. I get the stuff on re-deployment (war dropped in deploy folder) when there are deployment errors (last time it was ambiguous Weld-resolves). I don't know how work is divided between the Weld deployer and EJB/timers...

                      @Singleton
                      @Startup
                      public class Lukkosiivooja
                      {
                         @Inject
                         Tilauslukot tilauslukot;
                         @Inject
                         Logger loki;
                         @PostConstruct
                         public void init()
                         {
                            loki.info("Lukkosiivoja käynnistyi");
                         }
                         @Schedule(second = "*/30", minute="*", hour="*", persistent = false)
                         public void siivoa()
                         {
                            tilauslukot.siivoa();
                         }
                      }

                      @Singleton

                      @Startup

                      public class Lukkosiivooja

                      {

                         @Inject

                         Locks locks;

                       

                         @Inject

                         Logger log

                       

                         @PostConstruct

                         public void init()

                         {

                            ...

                         }

                       

                         @Schedule(second = "*/30", minute="*", hour="*", persistent = false)

                         public void siivoa()

                         {

                            locks.clean();

                         }

                       

                      }

                      • 9. Re: JBoss 6 M4 - Singleton re-deploy fails
                        jaikiran pai Master

                        Please create a EJBTHREE JIRA and attach this new simple application to reproduce this issue. I'll take look at it.

                        • 11. Re: JBoss 6 M4 - Singleton re-deploy fails
                          Christian Treptow Newbie

                          Note: as discussed yesterday with jaikiran, he noticed that timer remove still does not work properly when you have the timer in your bean, then remove timer and redeploy the bean.this still leads to an exception like yours.

                          In this case you can delete the "data"-folder in your "jboss/server/default"-folder and restart. But in your case it seems to be something other.

                           

                          Chris

                          • 12. Re: JBoss 6 M4 - Singleton re-deploy fails
                            Nicklas Karlsson Master

                            I was going to try against trunk but it had test failures related to EJBs so I wasn't sure it was going to be reliable anyway even if I skipped the tests to get it built.

                            • 13. Re: JBoss 6 M4 - Singleton re-deploy fails
                              jaikiran pai Master

                              AS trunk currently doesn't have any changes related to timer service compared to what's there in CR1. So trying against trunk wouldn't have made a difference. Thanks for that JIRA, I'll see what's causing this.