You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Jun Rao (JIRA)" <ji...@apache.org> on 2016/02/26 01:43:18 UTC
[jira] [Created] (KAFKA-3292)
ClientQuotaManager.getOrCreateQuotaSensors() may return a null
ClientSensors.throttleTimeSensor
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)