Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003052 [Resin] minor always 11-07-08 06:28 09-03-09 21:04
Reporter ferg View Status public  
Assigned To ferg
Priority urgent Resolution fixed  
Status closed   Product Version 3.1.6
Summary 0003052: database connection pooling issue
Description I'm currently having a problem trying to upgrade one of our
applications from resin 3.0.x to 3.1.6. while the application runs
fine on 3.0.x when i try to run it on 3.1.6 the server locks up after
30-60 seconds of web requests. looking at the stack trace it appears
to be some sort of deadlock in the caucho database ConnectionPool

I've attached a stack trace of what the threads look like immediately
after the server has been started and it stops accepting connections.
you can see that there are 336 threads stuck in a BLOCKED state trying
to create database connections while the only remaining 16 running
threads are the socket acceptors.

no exceptions are displayed in the logs and the code on our end does
not leave any database connections unclosed so i do not believe a leak
is an issue (this code runs great on 3.0.x for months at a time).

Thread 23959: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - com.caucho.jca.ConnectionPool.create(javax.resource.spi.ManagedConnectionFactory,, javax.resource.spi.ConnectionRequestInfo, boolean, com.caucho.jca.UserPoolItem) @bci=94, line=913 (Compiled frame)
 - com.caucho.jca.ConnectionPool.allocatePool(javax.resource.spi.ManagedConnectionFactory,, javax.resource.spi.ConnectionRequestInfo, com.caucho.jca.UserPoolItem) @bci=42, line=795 (Interpreted frame)
 - com.caucho.jca.ConnectionPool.allocate(javax.resource.spi.ManagedConnectionFactory,, javax.resource.spi.ConnectionRequestInfo) @bci=49, line=756 (Interpreted frame)
 - com.caucho.jca.ConnectionPool.allocateConnection(javax.resource.spi.ManagedConnectionFactory, javax.resource.spi.ConnectionRequestInfo) @bci=6, line=567 (Interpreted frame)
 - com.caucho.sql.DataSourceImpl.getConnection() @bci=9, line=65 (Interpreted frame)
 - com.caucho.sql.DBPool.getConnection() @bci=4, line=701 (Interpreted frame)
 - org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(javax.sql.DataSource) @bci=79, line=113 (Interpreted frame)
 - org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy.getConnection() @bci=21, line=109 (Interpreted frame)
 - org.springframework.orm.ibatis.SqlMapClientTemplate.execute(org.springframework.orm.ibatis.SqlMapClientCallback) @bci=106, line=190 (Interpreted frame)
 - org.springframework.orm.ibatis.SqlMapClientTemplate.executeWithListResult(org.springframework.orm.ibatis.SqlMapClientCallback) @bci=2, line=249 (Interpreted frame)
 - org.springframework.orm.ibatis.SqlMapClientTemplate.queryForList(java.lang.String, java.lang.Object) @bci=11, line=296 (Interpreted f
Additional Information
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
11-07-08 06:28 ferg New Issue
09-03-09 21:04 ferg Assigned To  => ferg
09-03-09 21:04 ferg Status new => closed
09-03-09 21:04 ferg Resolution open => fixed
09-03-09 21:04 ferg Fixed in Version  => 4.0.2

Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
26 total queries executed.
24 unique queries executed.
Powered by Mantis Bugtracker