TransactionManager.begin() calls Throttle.increment() which stalls after about 
10 days
--------------------------------------------------------------------------------------

                 Key: IBATIS-496
                 URL: https://issues.apache.org/jira/browse/IBATIS-496
             Project: iBatis for Java
          Issue Type: Bug
          Components: SQL Maps
    Affects Versions: 2.2.0
         Environment: OpenSuse Linux 10, JDK 1.4, MySQL 4.1, Tomat 5.0.28
            Reporter: Karsten Silz
            Priority: Blocker


We have a web application running on Tomcat, using the Commons JDBC connection 
pool and iBatis 2.2.  Our app uses a single "SqlMapClient" instance for all our 
database access.

Now what happens is that after 7-10 days, the application doesn't have any 
database connections anymore, and users typically notice because the login 
screen hangs forever.  At first we thought we're running out of MySQL 
connections, but then we did a Tomcat stack trace dump and found tens of 
threads, all stuck in the same method:

   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:485)
        at com.ibatis.common.util.Throttle.increment(Throttle.java:70)
        - locked <0x5a26fca8> (a java.lang.Object)
        at 
com.ibatis.sqlmap.engine.transaction.TransactionManager.begin(TransactionManager.java:54)
        at 
com.ibatis.sqlmap.engine.transaction.TransactionManager.begin(TransactionManager.java:39)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to