Class WALEventTrackerQueueService
java.lang.Object
org.apache.hadoop.hbase.namequeues.WALEventTrackerQueueService
- All Implemented Interfaces:
NamedQueueService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Loggerprivate org.apache.hbase.thirdparty.com.google.common.collect.EvictingQueue<WALEventTrackerPayload>private intprivate MetricsWALEventTrackerSourceprivate static final Stringprivate final boolean -
Constructor Summary
ConstructorsConstructorDescriptionWALEventTrackerQueueService(org.apache.hadoop.conf.Configuration conf) WALEventTrackerQueueService(org.apache.hadoop.conf.Configuration conf, MetricsWALEventTrackerSource source) -
Method Summary
Modifier and TypeMethodDescription(package private) voidaddToQueue(WALEventTrackerPayload payload) booleanCleans up queues maintained by services.voidconsumeEventFromDisruptor(NamedQueuePayload namedQueuePayload) This implementation is generic for consuming records from LMAX disruptor and inserts records to EvictingQueue which is maintained by each ringbuffer provider.getEvent()Retrieve event type for NamedQueueService implementation.getNamedQueueRecords(NamedQueueGetRequest request) Retrieve in memory queue records from ringbufferprivate Queue<WALEventTrackerPayload>voidpersistAll(Connection connection) Add all in memory queue records to system table.
-
Field Details
-
queue
private org.apache.hbase.thirdparty.com.google.common.collect.EvictingQueue<WALEventTrackerPayload> queue -
WAL_EVENT_TRACKER_RING_BUFFER_SIZE
- See Also:
-
walEventTrackerEnabled
-
queueSize
-
source
-
LOG
-
-
Constructor Details
-
WALEventTrackerQueueService
-
WALEventTrackerQueueService
public WALEventTrackerQueueService(org.apache.hadoop.conf.Configuration conf, MetricsWALEventTrackerSource source)
-
-
Method Details
-
getEvent
Description copied from interface:NamedQueueServiceRetrieve event type for NamedQueueService implementation.- Specified by:
getEventin interfaceNamedQueueService- Returns:
NamedQueuePayload.NamedQueueEvent
-
consumeEventFromDisruptor
Description copied from interface:NamedQueueServiceThis implementation is generic for consuming records from LMAX disruptor and inserts records to EvictingQueue which is maintained by each ringbuffer provider.- Specified by:
consumeEventFromDisruptorin interfaceNamedQueueService- Parameters:
namedQueuePayload- namedQueue payload from disruptor ring buffer
-
addToQueue
-
clearNamedQueue
Description copied from interface:NamedQueueServiceCleans up queues maintained by services.- Specified by:
clearNamedQueuein interfaceNamedQueueService- Returns:
- true if slow log payloads are cleaned up, false otherwise
-
getNamedQueueRecords
Description copied from interface:NamedQueueServiceRetrieve in memory queue records from ringbuffer- Specified by:
getNamedQueueRecordsin interfaceNamedQueueService- Parameters:
request- namedQueue request with event type- Returns:
- queue records from ringbuffer after filter (if applied)
-
persistAll
Description copied from interface:NamedQueueServiceAdd all in memory queue records to system table. The implementors can use system table or direct HDFS file or ZK as persistence system.- Specified by:
persistAllin interfaceNamedQueueService
-
getWALEventTrackerList
-