Venkateswararao Jujjuri (JV) created BOOKKEEPER-924:
-------------------------------------------------------
Summary: addEntry() is susceptible to spurious wakeups
Key: BOOKKEEPER-924
URL: https://issues.apache.org/jira/browse/BOOKKEEPER-924
Project: Bookkeeper
Issue Type: Bug
Reporter: Venkateswararao Jujjuri (JV)
Assignee: Venkateswararao Jujjuri (JV)
Priority: Critical
LedgerHandle sync interface heavily depends on SyncCounter to convert async
interfaces
into sync interfaces.
Usaylly
SyncCounter.inc()
asyncCall()
SyncCOunter.block(0)
The block code is.
synchronized void block(int limit) throws InterruptedException {
while (i > limit) {
int prev = i;
wait();
if (i == prev) {
break;
}
}
}
Since 'i' is going to be same as 'prev' on spurious wakeup, and wait() can
return on spurious wakeups.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)