[jbossts-issues] [JBoss JIRA] (JBTM-2643) "number-of-application-rollbacks" statistic counted multiple times during single rollback

Tomas Hofman (JIRA) issues at jboss.org
Thu Mar 24 05:03:00 EDT 2016


    [ https://issues.jboss.org/browse/JBTM-2643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13181719#comment-13181719 ] 

Tomas Hofman commented on JBTM-2643:
------------------------------------

Two stacktraces where the value is incremented:

{code}
"Transaction Reaper Worker 1 at 13945" daemon prio=5 tid=0x21b nid=NA runnable
  java.lang.Thread.State: RUNNABLE
	  at com.arjuna.ats.arjuna.coordinator.TxStats.incrementApplicationRollbacks(TxStats.java:263)
	  at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:120)
	  at com.arjuna.ats.arjuna.AtomicAction.cancel(AtomicAction.java:215)
	  at com.arjuna.ats.arjuna.coordinator.TransactionReaper.doCancellations(TransactionReaper.java:381)
	  at com.arjuna.ats.internal.arjuna.coordinator.ReaperWorkerThread.run(ReaperWorkerThread.java:78)


"default task-54 at 13969" prio=5 tid=0x21f nid=NA runnable
  java.lang.Thread.State: RUNNABLE
	  at com.arjuna.ats.arjuna.coordinator.TxStats.incrementApplicationRollbacks(TxStats.java:263)
	  at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:120)
	  at com.arjuna.ats.arjuna.AtomicAction.abort(AtomicAction.java:186)
	  at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.rollbackAndDisassociate(TransactionImple.java:1282)
	  at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:143)
	  at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:134)
	  at org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction(CMTTxInterceptor.java:93)
	  at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:279)
	  at org.jboss.as.ejb3.tx.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:349)
	  at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:241)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
	  at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:636)
	  at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
	  at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
	  at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)
	  at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)
	  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
	  at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)
	  at org.jboss.as.quickstarts.ear.client.GreeterEJBLocal$$$view7.sayHello(Unknown Source:-1)
	  at org.jboss.as.quickstarts.ear.controller.GreeterBean.sayHello(GreeterBean.java:84)
	  at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-1)
	  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	  at java.lang.reflect.Method.invoke(Method.java:498)
	  at com.sun.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:181)
	  at com.sun.el.parser.AstValue.invoke(AstValue.java:289)
	  at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)
	  at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)
	  at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	  at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)
	  at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	  at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	  at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
	  at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
	  at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	  at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
	  at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
	  at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	  at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	  at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
	  at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
	  at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
	  at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
	  at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
	  at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
	  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	  at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
	  at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
	  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	  at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
	  at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
	  at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
	  at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
	  at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
	  at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
	  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	  at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
	  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	  at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:284)
	  at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:263)
	  at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
	  at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:174)
	  at io.undertow.server.Connectors.executeRootHandler(Connectors.java:202)
	  at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:793)
	  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	  at java.lang.Thread.run(Thread.java:745)
{code}

> "number-of-application-rollbacks" statistic counted multiple times during single rollback
> -----------------------------------------------------------------------------------------
>
>                 Key: JBTM-2643
>                 URL: https://issues.jboss.org/browse/JBTM-2643
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>          Components: Transaction Core
>            Reporter: Tomas Hofman
>            Assignee: Tomas Hofman
>
> During transaction timeout, "number-of-application-rollbacks" stat is incremented twice. As a result, "number-of-application-rollbacks" can be higher then "number-of-aborted-transactions".



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jbossts-issues mailing list