You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2013/01/29 07:23:24 UTC
svn commit: r1439754 - in /hbase/branches/0.94:
security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java
src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java
Author: larsh
Date: Tue Jan 29 06:23:23 2013
New Revision: 1439754
URL: http://svn.apache.org/viewvc?rev=1439754&view=rev
Log:
HBASE-7694 Secure HBase should use repliation call queue (Jieshan Bean)
Modified:
hbase/branches/0.94/security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java
hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java
Modified: hbase/branches/0.94/security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java?rev=1439754&r1=1439753&r2=1439754&view=diff
==============================================================================
--- hbase/branches/0.94/security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java (original)
+++ hbase/branches/0.94/security/src/main/java/org/apache/hadoop/hbase/ipc/SecureServer.java Tue Jan 29 06:23:23 2013
@@ -21,6 +21,7 @@ package org.apache.hadoop.hbase.ipc;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.io.HbaseObjectWritable;
import org.apache.hadoop.hbase.io.WritableWithSize;
import org.apache.hadoop.hbase.security.HBaseSaslRpcServer;
@@ -620,8 +621,13 @@ public abstract class SecureServer exten
if (priorityCallQueue != null && getQosLevel(param) > highPriorityLevel) {
priorityCallQueue.put(call);
+ updateCallQueueLenMetrics(priorityCallQueue);
+ } else if (replicationQueue != null && getQosLevel(param) == HConstants.REPLICATION_QOS) {
+ replicationQueue.put(call);
+ updateCallQueueLenMetrics(replicationQueue);
} else {
callQueue.put(call); // queue the call; maybe blocked here
+ updateCallQueueLenMetrics(callQueue);
}
}
Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java?rev=1439754&r1=1439753&r2=1439754&view=diff
==============================================================================
--- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java (original)
+++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java Tue Jan 29 06:23:23 2013
@@ -235,7 +235,7 @@ public abstract class HBaseServer implem
private Handler[] handlers = null;
private Handler[] priorityHandlers = null;
/** replication related queue; */
- private BlockingQueue<Call> replicationQueue;
+ protected BlockingQueue<Call> replicationQueue;
private int numOfReplicationHandlers = 0;
private Handler[] replicationHandlers = null;
protected HBaseRPCErrorHandler errorHandler = null;
@@ -1355,7 +1355,7 @@ public abstract class HBaseServer implem
* Reports length of the call queue to HBaseRpcMetrics.
* @param queue Which queue to report
*/
- private void updateCallQueueLenMetrics(BlockingQueue<Call> queue) {
+ protected void updateCallQueueLenMetrics(BlockingQueue<Call> queue) {
if (queue == callQueue) {
rpcMetrics.callQueueLen.set(callQueue.size());
} else if (queue == priorityCallQueue) {