java - Transaction errors in JBoss AS 7.1 with MySQL database -


sometimes occurs errors in web application, these errors makes application slow , first end generating other errors.

usually regular application runs 100 + users, happens less.

this occurs few days after starting server.

when problem occurs, try restart jboss , mysql application slowly.

some characteristics of application:

constant database access (an example checking new messages in chat, each user checked every 10-60 seconds if there new message)

  • we have average of 30 users online , may reach 300.
  • we use amazon aws server (m.large)
  • we use controller architecture -> business -> dao

here few lines error log generated jboss:

14:33:19,450 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012117: transactionreaper::check timeout tx 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 in state run

14:33:19,543 warn [com.arjuna.ats.arjuna] (transaction reaper worker 0) arjuna012095: abort of action id 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 invoked while multiple threads active within it.

14:33:19,544 warn [com.arjuna.ats.arjuna] (transaction reaper worker 0) arjuna012108: checkedaction::check - atomic action 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 aborting 1 threads active!

14:33:19,977 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012117: transactionreaper::check timeout tx 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 in state cancel

14:33:20,503 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012117: transactionreaper::check timeout tx 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 in state cancel_interrupted

14:33:20,513 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012120: transactionreaper::check worker thread[transaction reaper worker 0,5,main] not responding interrupt when cancelling tx 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 -- worker marked zombie , tx scheduled mark-as-rollback

14:33:20,517 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012110: transactionreaper::check successfuly marked tx 0:ffffac1f18d6:69031402:540ce9d8:8c88e1 rollback only

14:33:26,037 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012117: transactionreaper::check timeout tx 0:ffffac1f18d6:69031402:540ce9d8:8c8a92 in state run

14:33:45,711 error [org.jboss.ejb3.invocation] (http--0.0.0.0-8080-93) jbas014134: ejb invocation failed on component business/mensagembs method public abstract java.util.list br.com.coderpro.business.local.mensagembslocal.getmensagensrecebidasdousuario(java.lang.long,br.com.coderpro.entities.tipousuario) throws br.com.coderpro.exceptions.businessexception: javax.ejb.ejbtransactionrolledbackexception: transaction rolled @ org.jboss.as.ejb3.tx.cmttxinterceptor.handleendtransactionexception(cmttxinterceptor.java:115) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.as.ejb3.tx.cmttxinterceptor.endtransaction(cmttxinterceptor.java:95) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.as.ejb3.tx.cmttxinterceptor.invokeinourtx(cmttxinterceptor.java:232) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.as.ejb3.tx.cmttxinterceptor.required(cmttxinterceptor.java:304) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.as.ejb3.tx.cmttxinterceptor.processinvocation(cmttxinterceptor.java:190) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ejb3.component.interceptors.currentinvocationcontextinterceptor.processinvocation(currentinvocationcontextinterceptor.java:41) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ejb3.component.interceptors.logginginterceptor.processinvocation(logginginterceptor.java:59) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ee.component.namespacecontextinterceptor.processinvocation(namespacecontextinterceptor.java:50) [jboss-as-ee-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ejb3.component.interceptors.additionalsetupinterceptor.processinvocation(additionalsetupinterceptor.java:32) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ee.component.tcclinterceptor.processinvocation(tcclinterceptor.java:45) [jboss-as-ee-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.invocation.chainedinterceptor.processinvocation(chainedinterceptor.java:61) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ee.component.viewservice$view.invoke(viewservice.java:165) [jboss-as-ee-7.1.1.final.jar:7.1.1.final] @ org.jboss.as.ee.component.viewdescription$1.processinvocation(viewdescription.java:173) [jboss-as-ee-7.1.1.final.jar:7.1.1.final] @ org.jboss.invocation.interceptorcontext.proceed(interceptorcontext.java:288) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.invocation.chainedinterceptor.processinvocation(chainedinterceptor.java:61) [jboss-invocation-1.1.1.final.jar:1.1.1.final] @ org.jboss.as.ee.component.proxyinvocationhandler.invoke(proxyinvocationhandler.java:72) [jboss-as-ee-7.1.1.final.jar:7.1.1.final] @ br.com.coderpro.business.local.mensagembslocal$$$view165.getmensagensrecebidasdousuario(unknown source) [classes:] @ br.com.coderpro.services.consultaservice.listarmensagens(consultaservice.java:200) [classes:] @ br.com.coderpro.services.consultaservice$proxy$_$$weldclientproxy.listarmensagens(consultaservice$proxy$$$_weldclientproxy.java) [classes:] @ sun.reflect.generatedmethodaccessor452.invoke(unknown source) [:1.7.0_51] @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) [rt.jar:1.7.0_51] @ java.lang.reflect.method.invoke(method.java:606) [rt.jar:1.7.0_51] @ org.jboss.resteasy.core.methodinjectorimpl.invoke(methodinjectorimpl.java:155) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.resourcemethod.invokeontarget(resourcemethod.java:257) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.resourcemethod.invoke(resourcemethod.java:222) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.resourcemethod.invoke(resourcemethod.java:211) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.synchronousdispatcher.getresponse(synchronousdispatcher.java:525) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.synchronousdispatcher.invoke(synchronousdispatcher.java:502) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.core.synchronousdispatcher.invoke(synchronousdispatcher.java:119) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.plugins.server.servlet.servletcontainerdispatcher.service(servletcontainerdispatcher.java:208) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.plugins.server.servlet.httpservletdispatcher.service(httpservletdispatcher.java:55) [resteasy-jaxrs-2.3.2.final.jar:] @ org.jboss.resteasy.plugins.server.servlet.httpservletdispatcher.service(httpservletdispatcher.java:50) [resteasy-jaxrs-2.3.2.final.jar:] @ javax.servlet.http.httpservlet.service(httpservlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.final.jar:1.0.0.final] @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:329) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:248) [jbossweb-7.0.13.final.jar:] @ org.jboss.weld.servlet.conversationpropagationfilter.dofilter(conversationpropagationfilter.java:62) [weld-core-1.1.5.as71.final.jar:2012-02-10 15:31] @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:280) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:248) [jbossweb-7.0.13.final.jar:] @ br.com.coderpro.controller.filters.keepmeloggedinfiltercontroller.dofilter(keepmeloggedinfiltercontroller.java:64) [classes:] @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:280) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:248) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:275) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:161) [jbossweb-7.0.13.final.jar:] @ org.jboss.as.web.security.securitycontextassociationvalve.invoke(securitycontextassociationvalve.java:153) [jboss-as-web-7.1.1.final.jar:7.1.1.final] @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:155) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:102) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:109) [jbossweb-7.0.13.final.jar:] @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:368) [jbossweb-7.0.13.final.jar:] @ org.apache.coyote.http11.http11processor.process(http11processor.java:877) [jbossweb-7.0.13.final.jar:] @ org.apache.coyote.http11.http11protocol$http11connectionhandler.process(http11protocol.java:671) [jbossweb-7.0.13.final.jar:] @ org.apache.tomcat.util.net.jioendpoint$worker.run(jioendpoint.java:930) [jbossweb-7.0.13.final.jar:] @ java.lang.thread.run(thread.java:744) [rt.jar:1.7.0_51] caused by: javax.transaction.rollbackexception: arjuna016063: transaction not active! @ com.arjuna.ats.internal.jta.transaction.arjunacore.transactionimple.commitanddisassociate(transactionimple.java:1155) @ com.arjuna.ats.internal.jta.transaction.arjunacore.basetransaction.commit(basetransaction.java:117) @ com.arjuna.ats.jbossatx.basetransactionmanagerdelegate.commit(basetransactionmanagerdelegate.java:75) @ org.jboss.as.ejb3.tx.cmttxinterceptor.endtransaction(cmttxinterceptor.java:92) [jboss-as-ejb3-7.1.1.final.jar:7.1.1.final] ... 56 more

15:11:16,316 error [br.com.coderpro.dao.projetodao] (http--0.0.0.0-8080-112) com.mysql.jdbc.exceptions.jdbc4.mysqltransactionrollbackexception: deadlock found when trying lock; try restarting transaction 15:11:16,315 error [br.com.coderpro.dao.projetodao] (http--0.0.0.0-8080-252) com.mysql.jdbc.exceptions.jdbc4.mysqltransactionrollbackexception: deadlock found when trying lock; try restarting transaction 15:11:16,315 error [br.com.coderpro.dao.projetodao] (http--0.0.0.0-8080-369) com.mysql.jdbc.exceptions.jdbc4.mysqltransactionrollbackexception: deadlock found when trying lock; try restarting transaction 15:11:16,815 error [br.com.coderpro.business.projetobs] (http--0.0.0.0-8080-252) br.com.coderpro.exceptions.daoexception: com.mysql.jdbc.exceptions.jdbc4.mysqltransactionrollbackexception: deadlock found when trying lock; try restarting transaction 15:11:16,241 warn [com.arjuna.ats.arjuna] (transaction reaper) arjuna012117: transactionreaper::check timeout tx 0:ffffac1f18d6:69031402:540ce9d8:8ee30a in state run

summarizing errors [com.arjuna.ats.arjuna], errors in bs classes , dao (transaction rolled caused transaction not active!) , deadlocks.

are using bean-managed transactions? "usertransaction" references in code. stack trace mentions "cmttxinterceptor" there may container-managed transactions involved (they default beans in j-boss).

i've seen symptom when both container , bean-managed transaction beans mixed. oracle documentation mentioned unsupported; though, can't find @ present. @ times arrangement worked fine, when timeouts came or other unexpected errors occurred fail in , other troublesome ways.

edit: if both bean , container-managed in use go 1 or other.


Comments

Popular posts from this blog

javascript - RequestAnimationFrame not working when exiting fullscreen switching space on Safari -

jsf - How to ajax update an item in the footer of a PrimeFaces dataTable? -

jquery - Keeping Kendo Datepicker in min/max range -