Jun Rao created KAFKA-3292:
------------------------------

             Summary: ClientQuotaManager.getOrCreateQuotaSensors() may return a 
null ClientSensors.throttleTimeSensor
                 Key: KAFKA-3292
                 URL: https://issues.apache.org/jira/browse/KAFKA-3292
             Project: Kafka
          Issue Type: Bug
            Reporter: Jun Rao
             Fix For: 0.10.0.0


It seems that the following situation is possible. Two threads try to call 
getOrCreateQuotaSensors() at the same time. Initially, quotaSensor is not 
registered, then both threads try to get the write lock to register 
quotaSensor. Thread 1 grabs the write lock and registers both quotaSensor and 
throttleTimeSensor, and then releases the lock. Thread 2 grabs the write lock 
again and reads a non-null quotaSensor. It then skips the logic to register 
throttleTimeSensor and returns. However, the returned throttleTimeSensor will 
be null.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to