You're likely not closing off your sessions consistently. Try running iBATIS from the SVN trunk. I've removed Throttle from the core, thus you should now get a better error (or at least I hope you do!). I'm guessing the new error will be from your datasource complaining that you're out of connections or something.
Cheers, clinton On Tue, Mar 18, 2008 at 6:18 AM, Karsten Silz <[EMAIL PROTECTED]> wrote: > Hi! > > 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. After 7-10 days, the application > doesn't have any database connections anymore. At first we thought we're > running out of MySQL connections, but then we did a Tomcat stack trace > dump > ("kill -3" to Tomcat in Linux - quite useful) 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 > (TransactionMan > ager.java:54) > at > com.ibatis.sqlmap.engine.transaction.TransactionManager.begin > (TransactionMan > ager.java:39) > > So all of them are stuck in an infinite wait(). I dug around the bugs, > and > this seems to have happened before (e.g., IBATIS-249), but it doesn't seem > to be fixed in 2.3 (to which we switched). So in the meantime, I thought > about modifying the "Throttle.java" constructor to not have an indefinite > wait time; this way, I hope to get an exception rather than a hanging > thread. > > Is this a good idea? If so, I had trouble compiling iBatis 2.3 in Eclipse > - > there we a lot of external libs missing. This may be a dumb question - > but > where can I find a list of libraries there? The "jar-dependies.txt" in > Batis 2.3 just list some optional ones, but then some source classes use > "org.apache.ojb.broker.PersistenceBroker" and > "javax.transaction.UserTransaction" and Hibernate - can I just delete > these > if I want to just use iBatis directly? > > Regards, > Karsten Silz > >