Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-5351

querying TimerService information from CLI fails for canceled timer

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 12.0.0.Beta1, 12.0.0.Final
    • 8.2.1.Final, 10.0.0.CR2, 10.0.0.CR4, 10.0.0.CR5
    • EJB
    • None
    • probably not relevant but here is my environment

      {{Java Version : 1.8.0_60
      Java Vendor : Oracle Corporation
      OS Hostname : PAMWX125
      OS Architecture : amd64
      OS Name : Windows 7
      }}

    • Hide
      • build the attached timer-cli-failure project: mvn clean package
      • from a clean server
      • deploy the provided demo war timer-cli-failure.war
      • execute the following cli jboss-cli.bat -c --command=":read-resource(recursive=true,include-runtime=true)"

      the output is
      {{{
      "outcome" => "failed",
      "rolled-back" => true
      }}}

      and on the server we have an exception
      {{2015-09-16 09:24:20,078 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 4) JBAS014612: Operation ("read-attribute") failed - address: ([
      ("deployment" => "timer-cli-failure.war"),
      ("subsystem" => "ejb3"),
      ("singleton-bean" => "TimersStartup"),
      ("service" => "timer-service"),
      ("timer" => "4cca6317-86e7-40f3-a7e8-7780b05e90af")
      ]): javax.ejb.NoSuchObjectLocalException: JBAS014469: Timer was canceled
      at org.jboss.as.ejb3.timerservice.TimerImpl.assertTimerState(TimerImpl.java:462)
      at org.jboss.as.ejb3.timerservice.TimerImpl.getInfo(TimerImpl.java:237)
      at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$12.readAttribute(TimerResourceDefinition.java:314)
      at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$AbstractReadAttributeHandler.executeRuntime(TimerResourceDefinition.java:364)
      at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$AbstractTimerHandler$1.execute(TimerResourceDefinition.java:330)
      at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:660) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:501) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:298) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:293) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:276) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:150) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.doExecute(ModelControllerClientOperationHandler.java:199) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.access$300(ModelControllerClientOperationHandler.java:130) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:150) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:146) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.8.0_60]
      at javax.security.auth.Subject.doAs(Subject.java:422) [rt.jar:1.8.0_60]
      at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:94) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1.execute(ModelControllerClientOperationHandler.java:146) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.protocol.mgmt.AbstractMessageHandler$2$1.doExecute(AbstractMessageHandler.java:283) [wildfly-protocol-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:504) [wildfly-protocol-8.2.1.Final-AM2.jar:8.2.1.Final-AM2]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_60]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_60]
      at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_60]
      at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final]
      }}

      Show
      build the attached timer-cli-failure project: mvn clean package from a clean server deploy the provided demo war timer-cli-failure.war execute the following cli jboss-cli.bat -c --command=":read-resource(recursive=true,include-runtime=true)" the output is {{{ "outcome" => "failed", "rolled-back" => true }}} and on the server we have an exception {{2015-09-16 09:24:20,078 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 4) JBAS014612: Operation ("read-attribute") failed - address: ([ ("deployment" => "timer-cli-failure.war"), ("subsystem" => "ejb3"), ("singleton-bean" => "TimersStartup"), ("service" => "timer-service"), ("timer" => "4cca6317-86e7-40f3-a7e8-7780b05e90af") ]): javax.ejb.NoSuchObjectLocalException: JBAS014469: Timer was canceled at org.jboss.as.ejb3.timerservice.TimerImpl.assertTimerState(TimerImpl.java:462) at org.jboss.as.ejb3.timerservice.TimerImpl.getInfo(TimerImpl.java:237) at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$12.readAttribute(TimerResourceDefinition.java:314) at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$AbstractReadAttributeHandler.executeRuntime(TimerResourceDefinition.java:364) at org.jboss.as.ejb3.subsystem.deployment.TimerResourceDefinition$AbstractTimerHandler$1.execute(TimerResourceDefinition.java:330) at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:660) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:501) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:298) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:293) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:276) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:150) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.doExecute(ModelControllerClientOperationHandler.java:199) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.access$300(ModelControllerClientOperationHandler.java:130) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:150) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:146) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.8.0_60] at javax.security.auth.Subject.doAs(Subject.java:422) [rt.jar:1.8.0_60] at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:94) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1.execute(ModelControllerClientOperationHandler.java:146) [wildfly-controller-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.protocol.mgmt.AbstractMessageHandler$2$1.doExecute(AbstractMessageHandler.java:283) [wildfly-protocol-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:504) [wildfly-protocol-8.2.1.Final-AM2.jar:8.2.1.Final-AM2] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_60] at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_60] at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final] }}

      When (at least) a persistent calendar timer is created then cancelled, querying TimerService information via CLI (script or library) fails when retrieving also runtime information.

      We discovered the issue because our arquillian tests are failing due to some code in arquillian that fires the equivalent of the provided CLI command below when remotes tests are executed.

      Attached is a proposed patch and a demo project to reproduce in a simple way.

        1. patch1.diff
          1 kB
          Matthieu Brouillard
        2. WFLY-5351diff
          4 kB
          Bart Van Dosselaer

              matthieu.brouillard_jira Matthieu Brouillard (Inactive)
              matthieu.brouillard_jira Matthieu Brouillard (Inactive)
              Votes:
              4 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: