Class WALEventTrackerQueueService
java.lang.Object
org.apache.hadoop.hbase.namequeues.WALEventTrackerQueueService
- All Implemented Interfaces:
NamedQueueService
-
Field Summary
Modifier and TypeFieldDescriptionprivate static final org.slf4j.Logger
private org.apache.hbase.thirdparty.com.google.common.collect.EvictingQueue<WALEventTrackerPayload>
private int
private MetricsWALEventTrackerSource
private static final String
private final boolean
-
Constructor Summary
ConstructorDescriptionWALEventTrackerQueueService
(org.apache.hadoop.conf.Configuration conf) WALEventTrackerQueueService
(org.apache.hadoop.conf.Configuration conf, MetricsWALEventTrackerSource source) -
Method Summary
Modifier and TypeMethodDescription(package private) void
addToQueue
(WALEventTrackerPayload payload) boolean
Cleans up queues maintained by services.void
consumeEventFromDisruptor
(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>
void
persistAll
(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:NamedQueueService
Retrieve event type for NamedQueueService implementation.- Specified by:
getEvent
in interfaceNamedQueueService
- Returns:
NamedQueuePayload.NamedQueueEvent
-
consumeEventFromDisruptor
Description copied from interface:NamedQueueService
This implementation is generic for consuming records from LMAX disruptor and inserts records to EvictingQueue which is maintained by each ringbuffer provider.- Specified by:
consumeEventFromDisruptor
in interfaceNamedQueueService
- Parameters:
namedQueuePayload
- namedQueue payload from disruptor ring buffer
-
addToQueue
-
clearNamedQueue
Description copied from interface:NamedQueueService
Cleans up queues maintained by services.- Specified by:
clearNamedQueue
in interfaceNamedQueueService
- Returns:
- true if slow log payloads are cleaned up, false otherwise
-
getNamedQueueRecords
Description copied from interface:NamedQueueService
Retrieve in memory queue records from ringbuffer- Specified by:
getNamedQueueRecords
in interfaceNamedQueueService
- Parameters:
request
- namedQueue request with event type- Returns:
- queue records from ringbuffer after filter (if applied)
-
persistAll
Description copied from interface:NamedQueueService
Add 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:
persistAll
in interfaceNamedQueueService
-
getWALEventTrackerList
-