vertx-jdbc-client: DeadlockDetector messages and c3p0 debug exception

242 views
Skip to first unread message

Chris

unread,
Oct 3, 2016, 5:07:44 PM10/3/16
to vert.x
I'm running my application with debug loggging and see that as I use it to make stored procedure call the following message starts to show:
DEBUG|com.mchange.v2.async.ThreadPoolAsynchronousRunner|ThreadPoolAsynchronousRunner$DeadlockDetector] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@8442fa7 -- Running DeadlockDetector[Exiting. No pending tasks.]

 


I'm creating a JDBCClient using JDBCClIent.createShare. Then get a connection which I use to call callWithParams.  Once that's complete I close the connection and in the close result handler close the client.  The more calls I make the more deadlockdetectors messages I see.

When I close my vertx instance I get an exception multiple times:

[DEBUG|com.mchange.v2.c3p0.impl.NewPooledConnection|NewPooledConnection] com.mchange.v2.c3p0.impl.NewPooledConnection@d46db6b closed by a client.
java.lang.Exception: DEBUG -- CLOSE BY CLIENT STACK TRACE
        at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:659)
        at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:255)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:622)
        at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1076)
        at com.mchange.v2.resourcepool.BasicResourcePool.destroyResource(BasicResourcePool.java:1101)
        at com.mchange.v2.resourcepool.BasicResourcePool.destroyResource(BasicResourcePool.java:1062)
        at com.mchange.v2.resourcepool.BasicResourcePool.access$100(BasicResourcePool.java:44)
        at com.mchange.v2.resourcepool.BasicResourcePool$5.run(BasicResourcePool.java:1316)



Is there something else I need to do when closing?
Is it expected that these DeadlockDetectors be running after I close the connection and client?

Chris

unread,
Oct 3, 2016, 7:14:57 PM10/3/16
to vert.x
When I view the running threads(I use ps -eLf) after letting my app run for a while I saw 800 threads for my application vs when it started it was ~17 threads.

Paulo Lopes

unread,
Oct 4, 2016, 7:08:10 AM10/4/16
to vert.x
I'm afraid that without seeing some code we cannot really help.

Chris

unread,
Oct 4, 2016, 2:51:29 PM10/4/16
to vert.x
I was having some trouble getting a cut down example version of what I was working on reproduce what I was seeing.  I think I might have found the issue. I have a call to executeBlocking that never completes.  I didn't specify ordered as false so for whatever reason the clients couldn't be destroyed. When I wasn't including that part of the code to reproduce the issue I always saw the clients as destroyed.
Reply all
Reply to author
Forward
0 new messages