[
https://issues.apache.org/jira/browse/BOOKKEEPER-326?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13406272#comment-13406272
]
Vinay commented on BOOKKEEPER-326:
----------------------------------
{code}Found one Java-level deadlock:
=============================
"pool-91-thread-1":
waiting to lock monitor 0x000000004039bce0 (object 0x00007f3dc329b6a0, a
org.apache.bookkeeper.proto.PerChannelBookieClient),
which is held by "main-EventThread"
"main-EventThread":
waiting to lock monitor 0x00000000401f4e50 (object 0x00007f3dc329b958, a
org.apache.bookkeeper.client.ReadLastConfirmedOp),
which is held by "pool-91-thread-1"
Java stack information for the threads listed above:
===================================================
"pool-91-thread-1":
at
org.apache.bookkeeper.proto.PerChannelBookieClient.connectIfNeededAndDoOp(PerChannelBookieClient.java:184)
- waiting to lock <0x00007f3dc329b6a0> (a
org.apache.bookkeeper.proto.PerChannelBookieClient)
at
org.apache.bookkeeper.proto.BookieClient.readEntry(BookieClient.java:144)
at
org.apache.bookkeeper.client.PendingReadOp.sendRead(PendingReadOp.java:109)
at
org.apache.bookkeeper.client.PendingReadOp.initiate(PendingReadOp.java:93)
at
org.apache.bookkeeper.client.LedgerHandle.asyncReadEntries(LedgerHandle.java:382)
at
org.apache.bookkeeper.client.LedgerRecoveryOp.doRecoveryRead(LedgerRecoveryOp.java:92)
at
org.apache.bookkeeper.client.LedgerRecoveryOp.access$000(LedgerRecoveryOp.java:46)
at
org.apache.bookkeeper.client.LedgerRecoveryOp$1.readLastConfirmedDataComplete(LedgerRecoveryOp.java:70)
at
org.apache.bookkeeper.client.ReadLastConfirmedOp.readEntryComplete(ReadLastConfirmedOp.java:116)
- locked <0x00007f3dc329b958> (a
org.apache.bookkeeper.client.ReadLastConfirmedOp)
at
org.apache.bookkeeper.proto.PerChannelBookieClient.handleReadResponse(PerChannelBookieClient.java:634)
at
org.apache.bookkeeper.proto.PerChannelBookieClient$7.safeRun(PerChannelBookieClient.java:539)
at org.apache.bookkeeper.util.SafeRunnable.run(SafeRunnable.java:31)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
"main-EventThread":
at
org.apache.bookkeeper.client.ReadLastConfirmedOp.readEntryComplete(ReadLastConfirmedOp.java:79)
- waiting to lock <0x00007f3dc329b958> (a
org.apache.bookkeeper.client.ReadLastConfirmedOp)
at
org.apache.bookkeeper.proto.BookieClient$3.operationComplete(BookieClient.java:132)
at
org.apache.bookkeeper.proto.BookieClient$3.operationComplete(BookieClient.java:128)
at
org.apache.bookkeeper.proto.PerChannelBookieClient$1.operationComplete(PerChannelBookieClient.java:168)
at
org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:381)
at
org.jboss.netty.channel.DefaultChannelFuture.addListener(DefaultChannelFuture.java:148)
at
org.apache.bookkeeper.proto.PerChannelBookieClient.connect(PerChannelBookieClient.java:137)
- locked <0x00007f3dc329b6a0> (a
org.apache.bookkeeper.proto.PerChannelBookieClient)
at
org.apache.bookkeeper.proto.PerChannelBookieClient.connectIfNeededAndDoOp(PerChannelBookieClient.java:200)
- locked <0x00007f3dc329b6a0> (a
org.apache.bookkeeper.proto.PerChannelBookieClient)
at
org.apache.bookkeeper.proto.BookieClient.readEntryAndFenceLedger(BookieClient.java:128)
at
org.apache.bookkeeper.client.ReadLastConfirmedOp.initiateWithFencing(ReadLastConfirmedOp.java:69)
at
org.apache.bookkeeper.client.LedgerRecoveryOp.initiate(LedgerRecoveryOp.java:84)
at
org.apache.bookkeeper.client.LedgerHandle$5.processResult(LedgerHandle.java:804)
at
org.apache.bookkeeper.util.RetryableZookeeper$6.processResult(RetryableZookeeper.java:633)
at
org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:545)
at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:497)
Found 1 deadlock.{code}
> DeadLock during ledger recovery
> --------------------------------
>
> Key: BOOKKEEPER-326
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-326
> Project: Bookkeeper
> Issue Type: Bug
> Affects Versions: 4.1.0
> Reporter: Vinay
>
> Deadlock found during ledger recovery. please find the attached thread dump.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira