Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-3777

BigApp: Transaction Synchronization Exception listing human tasks

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 6.0.1
    • 6.0.0
    • Business Central
    • None

      Description of problem:
      For some reason a transaction exception has thrown when an user from a group that has a task assigned try to list it.

      The exception is:

      00:18:17,378 WARN [org.jbpm.services.task.persistence.TaskTransactionInterceptor] (http-mackoy/127.0.0.1:8080-2) Could not commit session: com.arjuna.ats.jta.exceptions.RollbackException: ARJUNA016081: The transaction implementation threw a RollbackException
      at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple.registerInterposedSynchronization(TransactionSynchronizationRegistryImple.java:144)
      at org.drools.persistence.TransactionSynchronizationRegistryHelper.registerTransactionSynchronization(TransactionSynchronizationRegistryHelper.java:14) [drools-persistence-jpa-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.drools.persistence.jta.JtaTransactionManager.registerTransactionSynchronization(JtaTransactionManager.java:262) [drools-persistence-jpa-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.persistence.JPATaskPersistenceContext.persistOrgEntity(JPATaskPersistenceContext.java:214) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.UserGroupCallbackTaskCommand.persistIfNotExists(UserGroupCallbackTaskCommand.java:110) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.UserGroupCallbackTaskCommand.addGroupFromCallbackOperation(UserGroupCallbackTaskCommand.java:153) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.UserGroupCallbackTaskCommand.doCallbackGroupsOperation(UserGroupCallbackTaskCommand.java:131) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.UserGroupCallbackTaskCommand.doUserGroupCallbackOperation(UserGroupCallbackTaskCommand.java:71) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.GetTaskAssignedAsPotentialOwnerCommand.execute(GetTaskAssignedAsPotentialOwnerCommand.java:73) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.GetTaskAssignedAsPotentialOwnerCommand.execute(GetTaskAssignedAsPotentialOwnerCommand.java:15) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.TaskCommandExecutorImpl$SelfExecutionCommandService.execute(TaskCommandExecutorImpl.java:65) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41) [drools-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.persistence.TaskTransactionInterceptor.execute(TaskTransactionInterceptor.java:54) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.commands.TaskCommandExecutorImpl.execute(TaskCommandExecutorImpl.java:40) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.services.task.impl.command.CommandBasedTaskService.getTasksAssignedAsPotentialOwnerByStatus(CommandBasedTaskService.java:190) [jbpm-human-task-core-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.console.ng.ht.backend.server.TaskServiceEntryPointImpl.getTasksAssignedAsPotentialOwnerByExpirationDateOptional(TaskServiceEntryPointImpl.java:74) [jbpm-console-ng-human-tasks-backend-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.jbpm.console.ng.ht.backend.server.TaskServiceEntryPointImpl$Proxy$$$_WeldClientProxy.getTasksAssignedAsPotentialOwnerByExpirationDateOptional(TaskServiceEntryPointImpl$Proxy$$$_WeldClientProxy.java) [jbpm-console-ng-human-tasks-backend-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_51]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_51]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_51]
      at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_51]
      at org.jboss.errai.bus.server.io.AbstractRPCMethodCallback.invokeMethodFromMessage(AbstractRPCMethodCallback.java:48) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.io.ValueReplyRPCEndpointCallback.callback(ValueReplyRPCEndpointCallback.java:22) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.io.RemoteServiceCallback.callback(RemoteServiceCallback.java:54) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.cdi.server.CDIExtensionPoints$3.callback(CDIExtensionPoints.java:499) [errai-weld-integration-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.DeliveryPlan.deliver(DeliveryPlan.java:47) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.ServerMessageBusImpl.sendGlobal(ServerMessageBusImpl.java:284) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:46) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:92) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:109) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:140) [errai-bus-2.4.3.Final-redhat-4.jar:2.4.3.Final-redhat-4]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-1.jar:1.0.2.Final-redhat-1]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-1.jar:1.0.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.jboss.solder.servlet.exception.CatchExceptionFilter.doFilter(CatchExceptionFilter.java:65) [solder-impl-3.2.1.Final.jar:3.2.1.Final]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.jboss.solder.servlet.event.ServletEventBridgeFilter.doFilter(ServletEventBridgeFilter.java:74) [solder-impl-3.2.1.Final.jar:3.2.1.Final]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70) [jbpm-designer-backend-6.0.2-redhat-2.jar:6.0.2-redhat-2]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.uberfire.security.server.UberFireSecurityFilter.doFilter(UberFireSecurityFilter.java:266) [uberfire-security-server-0.3.2-redhat-2.jar:0.3.2-redhat-2]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:499) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]
      at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]
      at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:408) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
      at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
      Caused by: javax.transaction.RollbackException: ARJUNA016083: Can't register synchronization because the transaction is in aborted state
      at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.registerSynchronizationImple(TransactionImple.java:370)
      at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple.registerInterposedSynchronization(TransactionSynchronizationRegistryImple.java:140)
      ... 61 more

      Version-Release number of selected component (if applicable):
      6.0.0 CR2

      How reproducible:
      always

      Steps to Reproduce:
      1. create an user called john with role admin
      2. create an user called manager with role admin,manager
      3. create an user called broker with role admin,broker
      4. create an user called appraiser with role admin,appraiser
      5. clone the Example App git repo and build the project
      6. As user john, starts the process MortgageApplication with values:

      Applicant Name = john
      Address = Street X
      Social Security Number = 1234567894
      Income = 10000
      Property Sale Price = 200000
      Down Payment = 100000
      Amortization = 29

      7. Click in that process instance just started and view "Process model" - it should be stopped at Data Correction (it has broker as groupId).

      8. logout john and login as broker

      9. click on Task List

      Actual results:
      Transaction Exceptions in log and process is stuck

      Expected results:
      No exceptions and user should be able to see the task assigned to him

      Additional info:
      After this exception even other processes that have been working becomes unstable, specially those that have hutman tasks assigned to groups. To make them (other processes, not the mortgage) stable again we need to delete the server tmp and data folder.

            swiderski.maciej Maciej Swiderski (Inactive)
            rhn-support-alazarot Alessandro Lazarotti
            Jan Hrcek Jan Hrcek (Inactive)
            Jan Hrcek Jan Hrcek (Inactive)
            Jan Hrcek (Inactive), Kris Verlaenen, Lukáš Petrovický (Inactive), Marek Baluch
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: