https://issues.apache.org/bugzilla/show_bug.cgi?id=45144
Summary: using JDBC Data Sources freezes tomcat for some minutes Product: Tomcat 6 Version: 6.0.16 Platform: PC OS/Version: Linux Status: NEW Severity: blocker Priority: P2 Component: Catalina AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Created an attachment (id=22083) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22083) the full jstack -l output Hi, about system: running on a IBM System x3200 (Xeon dual core) machine with CentOS Linux 2.6.18-53.1.19.el5 #1 SMP Wed May 7 08:22:53 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux /opt/java/jdk1.6.0_06/bin/java -server -version java version "1.6.0_06" Java(TM) SE Runtime Environment (build 1.6.0_06-b02) Java HotSpot(TM) 64-Bit Server VM (build 10.0-b22, mixed mode) About the Problem: when getting new connection from the pool i'm getting many thread BLOCKED for 2 minutes, sometimes seconds, when this occurs today, i take a jstack from JVM and discover that the org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory is locked and many threads BLOCKED waiting to lock the same instance of PoolableConnectionFactory, follow i cut the most important part of the stack trace: The blocker part: "http-80-exec-18" daemon prio=10 tid=0x0000000054387400 nid=0x442f runnable [0x0000000043137000..0x0000000043138c90] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:129) at com.sap.dbtech.rte.comm.BasicSocketComm.receiveConnect(BasicSocketComm.java:707) at com.sap.dbtech.rte.comm.BasicSocketComm.dbConnectExchange(BasicSocketComm.java:789) at com.sap.dbtech.rte.comm.BasicSocketComm.connectDB(BasicSocketComm.java:233) at com.sap.dbtech.rte.comm.SocketComm$1.open(SocketComm.java:38) at com.sap.dbtech.jdbc.DriverSapDB.openConnection(DriverSapDB.java:966) at com.sap.dbtech.jdbc.DriverSapDB.openByURL(DriverSapDB.java:891) at com.sap.dbtech.jdbc.DriverSapDB.connect(DriverSapDB.java:208) - locked <0x00002aaab74c6978> (a com.sap.dbtech.jdbc.DriverSapDB) at org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) - locked <0x00002aaab74c6a18> (a org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory) at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:974) at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) at org.exolab.castor.jdo.engine.DatabaseRegistry.createConnection(DatabaseRegistry.java:399) at org.exolab.castor.jdo.engine.TransactionContextImpl.getConnection(TransactionContextImpl.java:203) at org.exolab.castor.persist.TransactionContext.query(TransactionContext.java:644) - locked <0x00002aaafc1adb20> (a org.exolab.castor.jdo.engine.TransactionContextImpl) at org.exolab.castor.jdo.engine.OQLQueryImpl.execute(OQLQueryImpl.java:458) at org.exolab.castor.jdo.engine.OQLQueryImpl.execute(OQLQueryImpl.java:405) at com.supridatta.act.produtos.PedidoAction.onIncluir(PedidoAction.java:70) at com.supridatta.bean.DataPersist.gravar(DataPersist.java:213) ... Locked ownable synchronizers: - <0x00002aaad0bfb648> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) The blocked part: "http-80-exec-43" daemon prio=10 tid=0x000000005356f000 nid=0x5619 waiting for monitor entry [0x0000000044046000..0x0000000044047c10] java.lang.Thread.State: BLOCKED (on object monitor) at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) - waiting to lock <0x00002aaab74c6a18> (a org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory) at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:974) at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) at org.exolab.castor.jdo.engine.DatabaseRegistry.createConnection(DatabaseRegistry.java:399) at org.exolab.castor.jdo.engine.TransactionContextImpl.getConnection(TransactionContextImpl.java:203) at org.exolab.castor.persist.TransactionContext.query(TransactionContext.java:644) - locked <0x00002aaafd720be0> (a org.exolab.castor.jdo.engine.TransactionContextImpl) at org.exolab.castor.jdo.engine.OQLQueryImpl.execute(OQLQueryImpl.java:458) at org.exolab.castor.jdo.engine.OQLQueryImpl.execute(OQLQueryImpl.java:414) at com.supridatta.bean.DataPersist.consulta(DataPersist.java:500) ... Locked ownable synchronizers: - <0x00002aaad0bfb648> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]