Rajini Sivaram created KAFKA-6653:
-------------------------------------
Summary: Delayed operations may not be completed when there is
lock contention
Key: KAFKA-6653
URL: https://issues.apache.org/jira/browse/KAFKA-6653
Project: Kafka
Issue Type: Bug
Components: core
Affects Versions: 1.0.1, 0.11.0.2, 1.1.0
Reporter: Rajini Sivaram
Assignee: Rajini Sivaram
If there is lock contention while multiple threads check if a delayed operation
may be completed (e.g. a produce request with acks=-1), only the thread that
acquires the lock without blocking attempts to complete the operation. This
change was made to avoid deadlocks under KAFKA-5970. But this leaves a timing
window when an operation becomes ready to complete after another thread has
acquired the lock and performed the check for completion, but not yet released
the lock. In this case, the operation may never be completed and will timeout
unless there are other operations with the same key. The timeout was observed
in a failed system test where a produce request timed out, causing the test
failure.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)