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

    JBoss 6 M4 - Singleton re-deploy fails

    ret

      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

          Let me try and reproduce this in a testcase.

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

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

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

                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
                  nickarls

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

                  • 6. Re: JBoss 6 M4 - Singleton re-deploy fails
                    nickarls

                    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

                      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
                        nickarls

                        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

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

                          • 10. Re: JBoss 6 M4 - Singleton re-deploy fails
                            nickarls
                            • 11. Re: JBoss 6 M4 - Singleton re-deploy fails
                              ret

                              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
                                nickarls

                                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

                                  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.