FAQ
Hi all,

I'm using cayenne 3.0 ans I'm experiencing a deadlock when I exit
my application. I call PoolManager.dispose() to disconnect all
connections, but it seems if at the same time a pooled connection is
returned to the pool then it deadlocks.

Here is the deadlock as detected by the java console.

Thanks,
Laurent Marchal.

Name: Worker-2
State: BLOCKED on com.sma.core.net.OpconPoolManager@197871d owned by: main
Total blocked: 327 Total waited: 475

Stack trace:
org.apache.cayenne.conn.PoolManager.connectionClosed(PoolManager.java:438)
org.apache.cayenne.conn.PooledConnectionImpl.connectionClosedNotification(PooledConnectionImpl.java:181)
- locked java.util.Collections$SynchronizedRandomAccessList@12a12fc
org.apache.cayenne.conn.PooledConnectionImpl.returnConnectionToThePool(PooledConnectionImpl.java:146)
org.apache.cayenne.conn.ConnectionWrapper.close(ConnectionWrapper.java:127)
org.apache.cayenne.access.ExternalTransaction.close(ExternalTransaction.java:168)
org.apache.cayenne.access.ExternalTransaction.commit(ExternalTransaction.java:105)

_______________________________________________________________________________________________________

Name: main
State: BLOCKED on
java.util.Collections$SynchronizedRandomAccessList@12a12fc owned by:
Worker-2
Total blocked: 30 Total waited: 122

Stack trace:
org.apache.cayenne.conn.PooledConnectionImpl.removeConnectionEventListener(PooledConnectionImpl.java:97)
org.apache.cayenne.conn.PoolManager.dispose(OpconPoolManager.java:169)
- locked org.apache.cayenne.conn.PoolManager@197871d
com.sma.core.session.Session.disconnect(Session.java:189)
- locked java.lang.Object@167a300
com.sma.core.session.Session.logout(Session.java:269)
- locked java.lang.Object@167a300

Search Discussions

  • Andrus Adamchik at Nov 23, 2010 at 4:33 pm
    Interesting. I guess we haven't seen it before cause people don't call dispose that often.

    Please open a Jira.

    Thanks,
    Andrus
    On Nov 23, 2010, at 5:54 PM, Laurent Marchal wrote:

    Hi all,

    I'm using cayenne 3.0 ans I'm experiencing a deadlock when I exit my application. I call PoolManager.dispose() to disconnect all connections, but it seems if at the same time a pooled connection is returned to the pool then it deadlocks.

    Here is the deadlock as detected by the java console.

    Thanks,
    Laurent Marchal.

    Name: Worker-2
    State: BLOCKED on com.sma.core.net.OpconPoolManager@197871d owned by: main
    Total blocked: 327 Total waited: 475

    Stack trace:
    org.apache.cayenne.conn.PoolManager.connectionClosed(PoolManager.java:438)
    org.apache.cayenne.conn.PooledConnectionImpl.connectionClosedNotification(PooledConnectionImpl.java:181)
    - locked java.util.Collections$SynchronizedRandomAccessList@12a12fc
    org.apache.cayenne.conn.PooledConnectionImpl.returnConnectionToThePool(PooledConnectionImpl.java:146)
    org.apache.cayenne.conn.ConnectionWrapper.close(ConnectionWrapper.java:127)
    org.apache.cayenne.access.ExternalTransaction.close(ExternalTransaction.java:168)
    org.apache.cayenne.access.ExternalTransaction.commit(ExternalTransaction.java:105)

    _______________________________________________________________________________________________________

    Name: main
    State: BLOCKED on java.util.Collections$SynchronizedRandomAccessList@12a12fc owned by: Worker-2
    Total blocked: 30 Total waited: 122

    Stack trace:
    org.apache.cayenne.conn.PooledConnectionImpl.removeConnectionEventListener(PooledConnectionImpl.java:97)
    org.apache.cayenne.conn.PoolManager.dispose(OpconPoolManager.java:169)
    - locked org.apache.cayenne.conn.PoolManager@197871d
    com.sma.core.session.Session.disconnect(Session.java:189)
    - locked java.lang.Object@167a300
    com.sma.core.session.Session.logout(Session.java:269)
    - locked java.lang.Object@167a300
  • Laurent Marchal at Nov 23, 2010 at 4:44 pm
    Yeah I was trying to be "clean" and dispose it when I leave the application.

    Filed as https://issues.apache.org/jira/browse/CAY-1513

    Thank you.
    Laurent.

    Le 11/23/2010 10:33 AM, Andrus Adamchik a écrit :
    Interesting. I guess we haven't seen it before cause people don't call dispose that often.

    Please open a Jira.

    Thanks,
    Andrus
    On Nov 23, 2010, at 5:54 PM, Laurent Marchal wrote:

    Hi all,

    I'm using cayenne 3.0 ans I'm experiencing a deadlock when I exit my application. I call PoolManager.dispose() to disconnect all connections, but it seems if at the same time a pooled connection is returned to the pool then it deadlocks.

    Here is the deadlock as detected by the java console.

    Thanks,
    Laurent Marchal.

    Name: Worker-2
    State: BLOCKED on com.sma.core.net.OpconPoolManager@197871d owned by: main
    Total blocked: 327 Total waited: 475

    Stack trace:
    org.apache.cayenne.conn.PoolManager.connectionClosed(PoolManager.java:438)
    org.apache.cayenne.conn.PooledConnectionImpl.connectionClosedNotification(PooledConnectionImpl.java:181)
    - locked java.util.Collections$SynchronizedRandomAccessList@12a12fc
    org.apache.cayenne.conn.PooledConnectionImpl.returnConnectionToThePool(PooledConnectionImpl.java:146)
    org.apache.cayenne.conn.ConnectionWrapper.close(ConnectionWrapper.java:127)
    org.apache.cayenne.access.ExternalTransaction.close(ExternalTransaction.java:168)
    org.apache.cayenne.access.ExternalTransaction.commit(ExternalTransaction.java:105)

    _______________________________________________________________________________________________________

    Name: main
    State: BLOCKED on java.util.Collections$SynchronizedRandomAccessList@12a12fc owned by: Worker-2
    Total blocked: 30 Total waited: 122

    Stack trace:
    org.apache.cayenne.conn.PooledConnectionImpl.removeConnectionEventListener(PooledConnectionImpl.java:97)
    org.apache.cayenne.conn.PoolManager.dispose(OpconPoolManager.java:169)
    - locked org.apache.cayenne.conn.PoolManager@197871d
    com.sma.core.session.Session.disconnect(Session.java:189)
    - locked java.lang.Object@167a300
    com.sma.core.session.Session.logout(Session.java:269)
    - locked java.lang.Object@167a300

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupuser @
categoriescayenne
postedNov 23, '10 at 3:54p
activeNov 23, '10 at 4:44p
posts3
users2
websitecayenne.apache.org

People

Translate

site design / logo © 2022 Grokbase