Hi,
we've seen the following Java level deadlock in H2, version 1.3.169. It was
reported by a user, I'm not sure how reproducible this is.
Jan
Found one Java-level deadlock:
=============================
"pool-2-thread-71":
waiting to lock monitor 0x00007f82b000c440 (object 0x000000058e7ce568, a
java.lang.Object),
which is held by "Thread 551"
"Thread 551":
waiting to lock monitor 0x00007f82b000c248 (object 0x000000058e6ffe58, a
org.h2.engine.Database),
which is held by "Thread 548"
"Thread 548":
waiting to lock monitor 0x00007f82b000c440 (object 0x000000058e7ce568, a
java.lang.Object),
which is held by "Thread 551"
Java stack information for the threads listed above:
===================================================
"pool-2-thread-71":
at org.h2.engine.Database.beforeWriting(Database.java:2272)
- waiting to lock <0x000000058e7ce568> (a java.lang.Object)
at org.h2.command.Command.executeQuery(Command.java:181)
at org.h2.jdbc.JdbcConnection.isReadOnly(JdbcConnection.java:531)
at
org.apache.commons.dbcp.DelegatingConnection.isReadOnly(DelegatingConnection.java:362)
at
org.apache.commons.dbcp.PoolableConnectionFactory.activateObject(PoolableConnectionFactory.java:711)
at
org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1174)
at
org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
<...>
"Thread 551":
at org.h2.engine.Database.reconnectModified(Database.java:317)
- waiting to lock <0x000000058e6ffe58> (a org.h2.engine.Database)
at org.h2.engine.Database.beforeWriting(Database.java:2272)
- locked <0x000000058e7ce568> (a java.lang.Object)
at org.h2.command.Command.executeQuery(Command.java:181)
at org.h2.jdbc.JdbcConnection.isReadOnly(JdbcConnection.java:531)
at
org.apache.commons.dbcp.DelegatingConnection.isReadOnly(DelegatingConnection.java:362)
at
org.apache.commons.dbcp.PoolableConnectionFactory.activateObject(PoolableConnectionFactory.java:711)
at
org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1174)
at
org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
<...>
"Thread 548":
at org.h2.engine.Database.afterWriting(Database.java:2294)
- waiting to lock <0x000000058e7ce568> (a java.lang.Object)
at org.h2.command.Command.executeQuery(Command.java:205)
- locked <0x000000058e6ffe58> (a org.h2.engine.Database)
at org.h2.jdbc.JdbcConnection.isReadOnly(JdbcConnection.java:531)
at
org.apache.commons.dbcp.DelegatingConnection.isReadOnly(DelegatingConnection.java:362)
at
org.apache.commons.dbcp.PoolableConnectionFactory.activateObject(PoolableConnectionFactory.java:711)
at
org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1174)
at
org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
<...>
Found 1 deadlock.
--
You received this message because you are subscribed to the Google Groups "H2
Database" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/h2-database/-/jukFaWMxnjMJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/h2-database?hl=en.