org.apache.hadoop.hbase.regionserver
Class CompactSplitThread
java.lang.Object
org.apache.hadoop.hbase.regionserver.CompactSplitThread
- All Implemented Interfaces:
- CompactionRequestor
@InterfaceAudience.Private
public class CompactSplitThread
- extends Object
- implements CompactionRequestor
Compact region on request and then run split if appropriate
Method Summary |
String |
dumpQueue()
|
int |
getCompactionQueueSize()
Returns the current size of the queue containing regions that are
processed. |
CompactionThroughputController |
getCompactionThroughputController()
|
int |
getLargeCompactionQueueSize()
|
int |
getRegionSplitLimit()
|
int |
getSmallCompactionQueueSize()
|
int |
getSplitQueueSize()
|
CompactionRequest |
requestCompaction(HRegion r,
Store s,
String why,
CompactionRequest request)
|
CompactionRequest |
requestCompaction(HRegion r,
Store s,
String why,
int priority,
CompactionRequest request)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why,
int p,
List<Pair<CompactionRequest,Store>> requests)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why,
List<Pair<CompactionRequest,Store>> requests)
|
void |
requestRegionsMerge(HRegion a,
HRegion b,
boolean forcible,
long masterSystemTime)
|
boolean |
requestSplit(HRegion r)
|
void |
requestSplit(HRegion r,
byte[] midKey)
|
void |
requestSystemCompaction(HRegion r,
Store s,
String why)
|
void |
requestSystemCompaction(HRegion r,
String why)
|
String |
toString()
|
REGION_SERVER_REGION_SPLIT_LIMIT
public static final String REGION_SERVER_REGION_SPLIT_LIMIT
- See Also:
- Constant Field Values
DEFAULT_REGION_SERVER_REGION_SPLIT_LIMIT
public static final int DEFAULT_REGION_SERVER_REGION_SPLIT_LIMIT
- See Also:
- Constant Field Values
toString
public String toString()
- Overrides:
toString
in class Object
dumpQueue
public String dumpQueue()
requestRegionsMerge
public void requestRegionsMerge(HRegion a,
HRegion b,
boolean forcible,
long masterSystemTime)
requestSplit
public boolean requestSplit(HRegion r)
requestSplit
public void requestSplit(HRegion r,
byte[] midKey)
requestCompaction
public List<CompactionRequest> requestCompaction(HRegion r,
String why)
throws IOException
- Specified by:
requestCompaction
in interface CompactionRequestor
- Parameters:
r
- Region to compactwhy
- Why compaction was requested -- used in debug messages
- Returns:
- The created
CompactionRequests
or an empty list if no
compactions were started
- Throws:
IOException
requestCompaction
public List<CompactionRequest> requestCompaction(HRegion r,
String why,
List<Pair<CompactionRequest,Store>> requests)
throws IOException
- Specified by:
requestCompaction
in interface CompactionRequestor
- Parameters:
r
- Region to compactwhy
- Why compaction was requested -- used in debug messagesrequests
- custom compaction requests. Each compaction must specify the store on which it
is acting. Can be null in which case a compaction will be attempted on all
stores for the region.
- Returns:
- The created
CompactionRequests
or an empty list if no
compactions were started
- Throws:
IOException
requestCompaction
public CompactionRequest requestCompaction(HRegion r,
Store s,
String why,
CompactionRequest request)
throws IOException
- Specified by:
requestCompaction
in interface CompactionRequestor
- Parameters:
r
- Region to compacts
- Store within region to compactwhy
- Why compaction was requested -- used in debug messagesrequest
- custom compaction request for the HRegion
and Store
. Custom
request must be null or be constructed with matching region and store.
- Returns:
- The created
CompactionRequest
or null if no compaction was started.
- Throws:
IOException
requestCompaction
public List<CompactionRequest> requestCompaction(HRegion r,
String why,
int p,
List<Pair<CompactionRequest,Store>> requests)
throws IOException
- Specified by:
requestCompaction
in interface CompactionRequestor
- Parameters:
r
- Region to compactwhy
- Why compaction was requested -- used in debug messagesp
- Priority of this compaction. minHeap. <=0 is criticalrequests
- custom compaction requests. Each compaction must specify the store on which it
is acting. Can be null in which case a compaction will be attempted on all
stores for the region.
- Returns:
- The created
CompactionRequests
or an empty list if no
compactions were started.
- Throws:
IOException
requestCompaction
public CompactionRequest requestCompaction(HRegion r,
Store s,
String why,
int priority,
CompactionRequest request)
throws IOException
- Specified by:
requestCompaction
in interface CompactionRequestor
- Parameters:
r
- Region to compacts
- Store within region to compactwhy
- Why compaction was requested -- used in debug messagespriority
- Priority of this compaction. minHeap. <=0 is criticalrequest
- custom compaction request to run. Store
and HRegion
for the
request must match the region and store specified here.
- Returns:
- The created
CompactionRequest
or null if no compaction was started
- Throws:
IOException
requestSystemCompaction
public void requestSystemCompaction(HRegion r,
String why)
throws IOException
- Throws:
IOException
requestSystemCompaction
public void requestSystemCompaction(HRegion r,
Store s,
String why)
throws IOException
- Throws:
IOException
getCompactionQueueSize
public int getCompactionQueueSize()
- Returns the current size of the queue containing regions that are
processed.
- Returns:
- The current size of the regions queue.
getLargeCompactionQueueSize
public int getLargeCompactionQueueSize()
getSmallCompactionQueueSize
public int getSmallCompactionQueueSize()
getSplitQueueSize
public int getSplitQueueSize()
getRegionSplitLimit
public int getRegionSplitLimit()
- Returns:
- the regionSplitLimit
getCompactionThroughputController
public CompactionThroughputController getCompactionThroughputController()
Copyright © 2007–2015 The Apache Software Foundation. All rights reserved.