Package org.apache.hadoop.hbase.ipc
Class FastPathRWQueueRpcExecutor
java.lang.Object
org.apache.hadoop.hbase.ipc.RpcExecutor
org.apache.hadoop.hbase.ipc.RWQueueRpcExecutor
org.apache.hadoop.hbase.ipc.FastPathRWQueueRpcExecutor
@LimitedPrivate({"Coprocesssor","Phoenix"})
@Evolving
public class FastPathRWQueueRpcExecutor
extends RWQueueRpcExecutor
RPC Executor that extends
RWQueueRpcExecutor
with fast-path feature, used in
FastPathBalancedQueueRpcExecutor
.-
Field Summary
Modifier and TypeFieldDescriptionprivate final Deque<FastPathRpcHandler>
private final Deque<FastPathRpcHandler>
private final Deque<FastPathRpcHandler>
Fields inherited from class org.apache.hadoop.hbase.ipc.RWQueueRpcExecutor
CALL_QUEUE_READ_SHARE_CONF_KEY, CALL_QUEUE_SCAN_SHARE_CONF_KEY
Fields inherited from class org.apache.hadoop.hbase.ipc.RpcExecutor
CALL_QUEUE_CODEL_DEFAULT_INTERVAL, CALL_QUEUE_CODEL_DEFAULT_LIFO_THRESHOLD, CALL_QUEUE_CODEL_DEFAULT_TARGET_DELAY, CALL_QUEUE_CODEL_INTERVAL, CALL_QUEUE_CODEL_LIFO_THRESHOLD, CALL_QUEUE_CODEL_TARGET_DELAY, CALL_QUEUE_HANDLER_FACTOR_CONF_KEY, CALL_QUEUE_QUEUE_BALANCER_CLASS, CALL_QUEUE_QUEUE_BALANCER_CLASS_DEFAULT, CALL_QUEUE_TYPE_CODEL_CONF_VALUE, CALL_QUEUE_TYPE_CONF_DEFAULT, CALL_QUEUE_TYPE_CONF_KEY, CALL_QUEUE_TYPE_DEADLINE_CONF_VALUE, CALL_QUEUE_TYPE_FIFO_CONF_VALUE, CALL_QUEUE_TYPE_PLUGGABLE_CONF_VALUE, currentQueueLimit, DEFAULT_CALL_QUEUE_SIZE_HARD_LIMIT, numCallQueues, PLUGGABLE_CALL_QUEUE_CLASS_NAME, PLUGGABLE_CALL_QUEUE_WITH_FAST_PATH_ENABLED, QUEUE_MAX_CALL_DELAY_CONF_KEY, queues
-
Constructor Summary
ConstructorDescriptionFastPathRWQueueRpcExecutor
(String name, int handlerCount, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable) -
Method Summary
Modifier and TypeMethodDescriptionboolean
dispatch
(CallRunner callTask) Add the request to the executor queueprotected RpcHandler
getHandler
(String name, double handlerFailureThreshhold, int handlerCount, BlockingQueue<CallRunner> q, AtomicInteger activeHandlerCount, AtomicInteger failedHandlerCount, Abortable abortable) Override if providing alternate Handler implementation.Methods inherited from class org.apache.hadoop.hbase.ipc.RWQueueRpcExecutor
computeNumCallQueues, dispatchTo, getActiveHandlerCount, getActiveReadHandlerCount, getActiveScanHandlerCount, getActiveWriteHandlerCount, getReadBalancer, getReadQueueLength, getReadShare, getScanBalancer, getScanQueueLength, getScanShare, getWriteBalancer, getWriteQueueLength, isWriteRequest, onConfigurationChange, shouldDispatchToScanQueue, startHandlers
Methods inherited from class org.apache.hadoop.hbase.ipc.RpcExecutor
getBalancer, getCallQueueCountsSummary, getCallQueueSizeSummary, getName, getNumGeneralCallsDropped, getNumLifoModeSwitches, getQueueLength, getQueues, initializeQueues, isCodelQueueType, isDeadlineQueueType, isFifoQueueType, isPluggableQueueType, isPluggableQueueWithFastPath, resizeQueues, start, startHandlers, stop
-
Field Details
-
readHandlerStack
-
writeHandlerStack
-
scanHandlerStack
-
-
Constructor Details
-
FastPathRWQueueRpcExecutor
public FastPathRWQueueRpcExecutor(String name, int handlerCount, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable)
-
-
Method Details
-
getHandler
protected RpcHandler getHandler(String name, double handlerFailureThreshhold, int handlerCount, BlockingQueue<CallRunner> q, AtomicInteger activeHandlerCount, AtomicInteger failedHandlerCount, Abortable abortable) Description copied from class:RpcExecutor
Override if providing alternate Handler implementation.- Overrides:
getHandler
in classRpcExecutor
-
dispatch
Description copied from class:RpcExecutor
Add the request to the executor queue- Overrides:
dispatch
in classRWQueueRpcExecutor
-