-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 8 posts ] 
Author Message
 Post subject: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Fri Aug 21, 2009 7:26 am 
Newbie

Joined: Fri Aug 21, 2009 7:09 am
Posts: 5
I tried all the solutions found on the forum, sadly to no avail. When I reset the database, c3p0 hangs with the dreaded deadlock problem. The only way to restore the connection then is to restart the portlet or the app server, any wait doesn't help otherwise.
I use c3p0+hibernate on glassfish, with spring. I don't think that glassfish rather than tomcat changes anything. c3p0 version 0.9.1.2, I'm not 100% sure that it's the version glassfish is using but I don't see any other c3p0 jar around, and I can't find the version in the log files anywhere.

The configuration:
- persistence.xml
Code:
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
    <persistence-unit name="fpt_crawlerPU" transaction-type="RESOURCE_LOCAL">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <class>data.model.Site</class>
        <class>data.model.Species</class>
        <class>data.model.Crawl</class>
        <properties>
            <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
            <property name="hibernate.connection.url" value="jdbc:postgresql://fishdb.jrc.org:5432/fpt_crawler"/>
            <property name="hibernate.max_fetch_depth" value="0"/>
            <property name="hibernate.cache.region_prefix" value="hibernate.test"/>
            <property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
<!-- configuration pool via c3p0-->
            <property name="c3p0.acquire_increment" value="1"/>
            <property name="c3p0.idle_test_period" value="300"/>
            <property name="c3p0.max_size" value="10"/>
            <property name="c3p0.max_statements" value="0"/>
            <property name="c3p0.min_size" value="1"/>
            <property name="c3p0.timeout" value="300"/>
            <property name="c3p0.validate" value="false" />
        </properties>
    </persistence-unit>

- c3p0.properties:
Code:
c3p0.acquireRetryAttempts=0
c3p0.breakAfterAcquireFailure=false
c3p0.testConnectionOnCheckout=true
c3p0.maxStatements=0
c3p0.maxStatementsPerConnection=100

The logs:
1. c3p0 settings
Code:
[#|2009-08-21T13:03:35.813+0200|INFO|glassfish|null|_ThreadID=27;_ThreadName=Thread-4;|2343 [AutoDeployer] DEBUG org.hibernate.ejb.Ejb3Configuration.configure  - Processing PersistenceUnitInfo [
        name: fpt_crawlerPU
        persistence provider classname: org.hibernate.ejb.HibernatePersistence
        classloader: WebappClassLoader
  delegate: true
  repositories:
    WEB-INF/classes/
----------> Parent Classloader:
org.glassfish.internal.api.DelegatingClassLoader@55108e

        Temporary classloader: org.springframework.instrument.classloading.SimpleThrowawayClassLoader@1e1b1cf
        excludeUnlistedClasses: false
        JTA datasource: null
        Non JTA datasource: null
        Transaction type: RESOURCE_LOCAL
        PU root URL: file:/home/glassfish/glassfishv3-prelude/glassfish/domains/domain1/applications/FPTCrawler/WEB-INF/classes/
        Jar files URLs []
        Managed classes names [
                data.model.Site
                data.model.Species
                data.model.Crawl]
        Mapping files names []
        Properties [
                c3p0.validate: false
                hibernate.connection.driver_class: org.postgresql.Driver
                c3p0.min_size: 1
                hibernate.cache.provider_class: org.hibernate.cache.HashtableCacheProvider
                hibernate.max_fetch_depth: 0
                c3p0.timeout: 300
                c3p0.idle_test_period: 300
                hibernate.connection.username: fpt_crawler_admin
                hibernate.cache.region_prefix: hibernate.test
                hibernate.hbm2ddl.auto: update
                c3p0.acquire_increment: 1
                c3p0.max_size: 10
                hibernate.connection.url: jdbc:postgresql://fishdb.jrc.org:5432/fpt_crawler
                hibernate.connection.password: fpt_crawler_admin1
                c3p0.max_statements: 0]

Seems it gets the configs correctly.
2. the error:
Code:
[#|2009-08-21T13:18:38.988+0200|INFO|glassfish|null|_ThreadID=38;_ThreadName=Thread-4;|13:18:38,988 WARN  [ThreadPoolAsynchronousRunner:624] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@f967da -- APPARENT DEADLOCK!!! Complete Status:
        Managed Threads: 10
        Active Threads: 10
        Active Tasks:
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@723352 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#4)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@18777ce (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#8)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@ca806c (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@b56c4d (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@d97438 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#3)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@5d25b0 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#6)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1556cfa (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#7)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@165ce4b (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#9)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@caa2be (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#5)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@182a6ed (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
        Pending Tasks:
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@9d1888
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b5c8a2
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1871b1f
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@105ce8e
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@3bd76a
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@bb88e3
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1803f9
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@ace919
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1fba634
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@5cb053
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@13c3b2e
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@15173b3
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@82f8ba
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@97aee3
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@5ae371
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@10a4330
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@c109f9
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@175e2d3
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@7ebda8
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@d589e1
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@14f2bd3
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@c6338c
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@62465e
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1f9fffd
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@154443
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@34a56b
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@584525
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@12390ba
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1f2a4f2
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@12b1619
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1b7d34b
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@19104af
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1ca9174
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@136800
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@11169d
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1e3a5a8
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@90e298
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@c862b
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@3c89b2
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@740850
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1cdf5dd
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@c8aa20
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@192fcb
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@190bfa8
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@16baae
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@3a05f7
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@15db5ea
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1523d54
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@387853
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@163b83d
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1d4b4af
Pool thread stack traces:
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#4,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#8,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Co|#]

[#|2009-08-21T13:18:38.988+0200|INFO|glassfish|null|_ThreadID=38;_ThreadName=Thread-4;|nnection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#3,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#7,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.post|#]

[#|2009-08-21T13:18:38.988+0200|INFO|glassfish|null|_ThreadID=38;_ThreadName=Thread-4;|gresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#6,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#9,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#5,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Con|#]

[#|2009-08-21T13:18:38.989+0200|INFO|glassfish|null|_ThreadID=38;_ThreadName=Thread-4;|nection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)


|#]



I need a workaround for this, any suggestions?


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Mon Aug 24, 2009 10:43 am 
Newbie

Joined: Fri Aug 21, 2009 7:09 am
Posts: 5
No takers? It would seem a specific enough questions and I know there are c3p0 experts luring around :)


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Mon Aug 24, 2009 12:03 pm 
Beginner
Beginner

Joined: Wed Sep 06, 2006 12:08 pm
Posts: 48
Location: Warsaw - Poland - Europe - Milky Way
Just to cheer you up:
I'm observing this your forum thread. I spend tens of hours trying to get rid of those warning messages (APPARENT DEADLOCK!!!). With no luck :(

As you could probably see, there are a lot of discussion about this warning message around this forum and around internet.

What is even worse - I am not able to reproduce this Warning :( It seams to be randomly.

As far as I remember (I'm NOT sure) setting both setting to 0:
Code:
hibernate.c3p0.max_statements      [in hibernate.cfg.xml]
c3p0.maxStatementsPerConnection  [in c3p0.properties]


... fixing problem with "APPARENT DEADLOCK!!!" message, but, for performance reasons, this solution is not acceptable for me at all.

btw:
Drop a post if you will find a solution for this! I will send you (or anybody who know the solution) 6 cans of polish beer - I promise! :)

Take care,
Adam Woźniak


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Tue Aug 25, 2009 7:19 am 
Newbie

Joined: Fri Aug 21, 2009 7:09 am
Posts: 5
Thanks, I tried those settings but they didn't help sadly.

I tried something else: I used dbcp to see whether the error would go away, but even though the log says that a dbcp connection is being used, the same error happens!! I don't get it...

Code:
        <property name="hibernate.dbcp.maxActive" value="2"/>
        <property name="hibernate.dbcp.maxIdle" value="1"/>
        <property name="hibernate.dbcp.maxWait" value="1"/>
        <property name="hibernate.dbcp.validationQuery" value="select * from species"/>
        <property name="hibernate.dbcp.testOnBorrow" value="true"/>
        <property name="hibernate.dbcp.testOnReturn" value="true"/>
        <property name="hibernate.dbcp.testWhileIdle" value="true"/>
        <property name="hibernate.dbcp.timeBetweenEvictionRunsMillis" value="10000"/>
        <property name="hibernate.dbcp.removeAbandoned" value="true"/>

The dbcp being started:
Code:
[#|2009-08-25T13:17:25.265+0200|INFO|glassfish|null|_ThreadID=16;_ThreadName=Thread-4;|742  [AutoDeployer] DEBUG org.hibernate.ejb.Ejb3Configuration.configure  - Processing PersistenceUnitInfo [
        name: fpt_crawlerPU
        persistence provider classname: org.hibernate.ejb.HibernatePersistence
        classloader: WebappClassLoader
  delegate: true
  repositories:
    WEB-INF/classes/
----------> Parent Classloader:
org.glassfish.internal.api.DelegatingClassLoader@4bd767

        Temporary classloader: org.springframework.instrument.classloading.SimpleThrowawayClassLoader@c11a18
        excludeUnlistedClasses: true
        JTA datasource: null
        Non JTA datasource: null
        Transaction type: RESOURCE_LOCAL
        PU root URL: file:/home/glassfish/glassfishv3-prelude/glassfish/domains/domain1/applications/FPTCrawler/WEB-INF/classes/
        Jar files URLs []
        Managed classes names [
                data.model.Site
                data.model.Species
                data.model.Crawl]
        Mapping files names []
        Properties [
                hibernate.dbcp.timeBetweenEvictionRunsMillis: 10000
                hibernate.connection.password: fpt_crawler_admin1
                hibernate.dbcp.removeAbandoned: true
                hibernate.cache.region_prefix: hibernate.test
                hibernate.dbcp.testOnBorrow: true
                hibernate.dbcp.testOnReturn: true
                hibernate.dbcp.validationQuery: select * from species
                hibernate.hbm2ddl.auto: update
                hibernate.jdbc.use_streams_for_binary: true
                hibernate.max_fetch_depth: 0
                hibernate.connection.username: fpt_crawler_admin
                hibernate.dbcp.maxActive: 2
                hibernate.dbcp.maxIdle: 1
                hibernate.connection.driver_class: org.postgresql.Driver
                hibernate.cache.provider_class: org.hibernate.cache.HashtableCacheProvider
                hibernate.dbcp.maxWait: 1
                hibernate.dbcp.testWhileIdle: true
                hibernate.connection.url: jdbc:postgresql://fishdb.jrc.org:5432/fpt_crawler]
|#]



After resetting the db:
Code:
WARN  [NewPooledConnection:486] [c3p0] A PooledConnection that has already signalled a Connection error is still in use!


The deadlock:
Code:
[#|2009-08-25T13:13:51.063+0200|INFO|glassfish|null|_ThreadID=44;_ThreadName=Thread-4;|13:13:51,063 WARN  [ThreadPoolAsynchronousRunner:624] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1207a77 -- APPARENT DEADLOCK!!! Complete Status:
        Managed Threads: 10
        Active Threads: 10
        Active Tasks:
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1208cfb (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@7c5c7 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#7)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@49cb6e (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#3)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@cad52b (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#9)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@71289e (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@121bb0b (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@17efdeb (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#8)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@505118 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#5)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@fc01e5 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#4)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@e062ea (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#6)
        Pending Tasks:
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@17e2984
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1d7c0db
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b67511
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1bfb30b
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@83c63c
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@14b907b
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1fa9692
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@b386ba
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@5242a0
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@941790
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@97238d
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@9f0055
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@cefcfb
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@142cf76
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1426b65
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@198ebed
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@a926dd
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@1367da9
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@73fd8a
                com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@10a7569
Pool thread stack traces:
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#7,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#3,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.j|#]

[#|2009-08-25T13:13:51.064+0200|INFO|glassfish|null|_ThreadID=44;_ThreadName=Thread-4;|ava:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#9,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#8,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:3|#]

[#|2009-08-25T13:13:51.064+0200|INFO|glassfish|null|_ThreadID=44;_ThreadName=Thread-4;|86)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#5,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#6,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
        Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#4,5,main]
                java.net.PlainSocketImpl.socketConnect(Native Method)
                java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
                java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
                java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
                java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
                java.net.Socket.connect(Socket.java:542)
                java.net.Socket.connect(Socket.java:492)
                java.net.Socket.<init>(Socket.java:389)
                java.net.Socket.<init>(Socket.java:203)
                org.postgresql.core.PGStream.<init>(PGStream.java:62)
                org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:77)
                org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
                org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:124)
                org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
                org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
                org.postgresql.Driver.makeConnection(Driver.java:386)
                org.postgresql.Driver.connect(Driver.java:260)
                com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
                com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
                com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
                com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
                com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
                com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
                com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)




Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Tue Aug 25, 2009 7:45 am 
Beginner
Beginner

Joined: Wed Sep 06, 2006 12:08 pm
Posts: 48
Location: Warsaw - Poland - Europe - Milky Way
Hi

Actually, I've never tried to replace c3p0 connection pool and use other JDBC connection pool. I mean, I'm not able to support you in those yours problems with dbcp.

But ... 1 year ago I talked (via email) with Emmanuel Bernard about connection pools and he said:
Quote:
I must admit I use the JBoss connection pool as it plays nicely with my JTA environment.

So maybe JBoss connection pool is a good alternative.

Take care!
Adam Woźniak


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Wed Aug 26, 2009 4:16 am 
Newbie

Joined: Fri Aug 21, 2009 7:09 am
Posts: 5
Thanks Adam, good idea I'll try jboss and let you know.


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Thu Aug 27, 2009 12:07 pm 
Newbie

Joined: Fri Aug 21, 2009 7:09 am
Posts: 5
I was fiddling around trying to make it work with proxool (jboss is too heavy for my needs) when I stumbled over a realization. The DEADLOCK error is not caused by my application!! (it can be seen, as I realized late, by the different ThreadID)
It's due to something else, it happens even when my app is removed from glassfish! No errors at all from my ThreadID. Is it spring's fault somehow?

Why is hibernate not checking the connection? This is really weird... Does anybody see an error in my configs?


Top
 Profile  
 
 Post subject: Re: c3p0 'apparent deadlock' with c3p0.max_statements = 0
PostPosted: Thu Aug 27, 2009 12:17 pm 
Beginner
Beginner

Joined: Wed Sep 06, 2006 12:08 pm
Posts: 48
Location: Warsaw - Poland - Europe - Milky Way
Hi

I suspect c3p0 of the bug :(

For example you can have a look at anders post:
viewtopic.php?uid=34116&f=1&t=947246&start=15

Take care,
Adam Woźniak


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 8 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.