Affects Version/s: 1.3.0
Fix Version/s: None
From Hiroshi Ikeda over in
HBASE-16023 at https://issues.apache.org/jira/browse/HBASE-16023?focusedCommentId=15331172&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15331172
An concrete example of the race condition:
1. Worker checks no task.
2. Reader checks no ready handler.
3. Worker pushes itself as a ready handler and waits on the semaphore.
4. Reader queues a task to the queue, without directly passing it to the ready handler nor releasing the semaphore.
(1,3) and (2,4) should be exclusively executed. That depends on luck, and it might be not severe