<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Arial; font-size: 12pt; color: #000000'>This is something I have been asking about for awhile, and am concerned about its throughput implications.&nbsp; In EAP 5.x, I always remove the Valve from JBoss Web, remove the interceptor from EJB 3 to get better performance.&nbsp; In the AS 7.x series, Jesper was good to allow a configuration parameter to remove it from JCA (cannot be removed from JCA, but can be put into non-debug mode).<br><br>So, I knew eventually this thing would pop back up, and the implementation approach is a very big concern of mine, for performance.&nbsp; So, whatever is done there, it needs to be removable, since this serves two purposes.&nbsp;&nbsp; One is just to catch bugs in the application, and the other is the lazy enlistment of transactions.&nbsp; The later is only needed for applications that, in my opinion is to support an anti-pattern that is codified in the spec, and SPECjEnterprise2010 doesn't need that functionality (thank God!).<br><br>Andy<br><br><hr id="zwchr"><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><b>From: </b>"Carlo de Wolf" &lt;cdewolf@redhat.com&gt;<br><b>To: </b>jpai@redhat.com<br><b>Cc: </b>jboss-as7-dev@lists.jboss.org<br><b>Sent: </b>Tuesday, October 18, 2011 10:51:24 AM<br><b>Subject: </b>Re: [jboss-as7-dev] Better handling of transaction leaks?<br><br>Yes, I would even say that we need it in the thread pools themselves.<br>Note that it does not have anything to do with cached connections.<br><br>Carlo<br><br>On 10/18/2011 05:58 PM, Jaikiran Pai wrote:<br>&gt; While looking into a test failure I noticed that currently user<br>&gt; applications can end up leaking transactions (associated with the<br>&gt; invocation thread):<br>&gt;<br>&gt; Servlet {<br>&gt;<br>&gt; &nbsp; &nbsp; &nbsp;doGet() {<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp;UserTransaction.begin();<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp;doSomeOp();<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp;fail();<br>&gt; &nbsp; &nbsp; &nbsp; &nbsp;// no tx rollback/commit<br>&gt; &nbsp; &nbsp; &nbsp;}<br>&gt; }<br>&gt;<br>&gt; Subsequent transactions on that thread can lead to failures and other<br>&gt; sorts of issues. Looking back at previous versions of AS, we had a valve<br>&gt; http://anonsvn.jboss.org/repos/jbossas/trunk/tomcat/src/main/java/org/jboss/web/tomcat/service/jca/CachedConnectionValve.java<br>&gt; which used to cleanup (and log an error) about the leaking transactions.<br>&gt;<br>&gt; Do we want something similar for AS7? Also, are there other "entry<br>&gt; points" (like servlets for web requests) where such leaks can happen and<br>&gt; needs to be taken care off?<br>&gt;<br>&gt; -Jaikiran<br>&gt;<br>&gt; _______________________________________________<br>&gt; jboss-as7-dev mailing list<br>&gt; jboss-as7-dev@lists.jboss.org<br>&gt; https://lists.jboss.org/mailman/listinfo/jboss-as7-dev<br><br>_______________________________________________<br>jboss-as7-dev mailing list<br>jboss-as7-dev@lists.jboss.org<br>https://lists.jboss.org/mailman/listinfo/jboss-as7-dev<br></blockquote><br></div></body></html>