Repository: kafka
Updated Branches:
  refs/heads/trunk b3b533171 -> af1699bcc


KAFKA-3292; ClientQuotaManager.getOrCreateQuotaSensors() may return a null 
ClientSensors.throttleTimeSensor

Author: Ismael Juma <[email protected]>

Reviewers: Jun Rao <[email protected]>

Closes #977 from ijuma/kafka-3292-null-throttle-time-sensor


Project: http://git-wip-us.apache.org/repos/asf/kafka/repo
Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/af1699bc
Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/af1699bc
Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/af1699bc

Branch: refs/heads/trunk
Commit: af1699bccbb725633f0b9deb666054a573da7667
Parents: b3b5331
Author: Ismael Juma <[email protected]>
Authored: Thu Feb 25 17:53:19 2016 -0800
Committer: Jun Rao <[email protected]>
Committed: Thu Feb 25 17:53:19 2016 -0800

----------------------------------------------------------------------
 core/src/main/scala/kafka/server/ClientQuotaManager.scala | 3 +++
 1 file changed, 3 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kafka/blob/af1699bc/core/src/main/scala/kafka/server/ClientQuotaManager.scala
----------------------------------------------------------------------
diff --git a/core/src/main/scala/kafka/server/ClientQuotaManager.scala 
b/core/src/main/scala/kafka/server/ClientQuotaManager.scala
index 37b432c..5ec57ce 100644
--- a/core/src/main/scala/kafka/server/ClientQuotaManager.scala
+++ b/core/src/main/scala/kafka/server/ClientQuotaManager.scala
@@ -200,7 +200,10 @@ class ClientQuotaManager(private val config: 
ClientQuotaManagerConfig,
        */
       lock.writeLock().lock()
       try {
+        // Set the var for both sensors in case another thread has won the 
race to acquire the write lock. This will
+        // ensure that we initialise `ClientSensors` with non-null parameters.
         quotaSensor = metrics.getSensor(quotaSensorName)
+        throttleTimeSensor = metrics.getSensor(throttleTimeSensorName)
         if (quotaSensor == null) {
           // create the throttle time sensor also. Use default metric config
           throttleTimeSensor = metrics.sensor(throttleTimeSensorName,

Reply via email to