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,
User user)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why,
int p,
List<Pair<CompactionRequest,Store>> requests,
User user)
|
List<CompactionRequest> |
requestCompaction(HRegion r,
String why,
List<Pair<CompactionRequest,Store>> requests)
|
void |
requestRegionsMerge(HRegion a,
HRegion b,
boolean forcible,
long masterSystemTime,
User user)
|
boolean |
requestSplit(HRegion r)
|
void |
requestSplit(HRegion r,
byte[] midKey)
|
void |
requestSplit(HRegion r,
byte[] midKey,
User user)
|
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,
User user)
requestSplit
public boolean requestSplit(HRegion r)
requestSplit
public void requestSplit(HRegion r,
byte[] midKey)
requestSplit
public void requestSplit(HRegion r,
byte[] midKey,
User user)
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,
User user)
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.user
- the effective user
- 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,
User user)
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–2016 The Apache Software Foundation. All rights reserved.