HBASE-2018 Updates to .META. blocked under high MemStore load
git-svn-id: https://svn.apache.org/repos/asf/hadoop/hbase/trunk@887054 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
6f56688341
commit
c3eb2c844f
|
@ -118,6 +118,7 @@ Release 0.21.0 - Unreleased
|
|||
something...
|
||||
HBASE-1997 zk tick time bounds maximum zk session time
|
||||
HBASE-2003 [shell] deleteall ignores column if specified
|
||||
HBASE-2018 Updates to .META. blocked under high MemStore load
|
||||
|
||||
IMPROVEMENTS
|
||||
HBASE-1760 Cleanup TODOs in HTable
|
||||
|
|
|
@ -1654,7 +1654,9 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
|||
this.requestCount.incrementAndGet();
|
||||
HRegion region = getRegion(regionName);
|
||||
try {
|
||||
cacheFlusher.reclaimMemStoreMemory();
|
||||
if (!region.getRegionInfo().isMetaTable()) {
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
}
|
||||
region.put(put, getLockFromId(put.getLockId()));
|
||||
|
||||
this.syncWal(region);
|
||||
|
@ -1671,7 +1673,9 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
|||
HRegion region = null;
|
||||
try {
|
||||
region = getRegion(regionName);
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
if (!region.getRegionInfo().isMetaTable()) {
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
}
|
||||
Integer[] locks = new Integer[puts.length];
|
||||
for (i = 0; i < puts.length; i++) {
|
||||
this.requestCount.incrementAndGet();
|
||||
|
@ -1715,10 +1719,11 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
|||
this.requestCount.incrementAndGet();
|
||||
HRegion region = getRegion(regionName);
|
||||
try {
|
||||
cacheFlusher.reclaimMemStoreMemory();
|
||||
if (!region.getRegionInfo().isMetaTable()) {
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
}
|
||||
boolean retval = region.checkAndPut(row, family, qualifier, value, put,
|
||||
getLockFromId(put.getLockId()), true);
|
||||
|
||||
getLockFromId(put.getLockId()), true);
|
||||
this.syncWal(region);
|
||||
return retval;
|
||||
} catch (Throwable t) {
|
||||
|
@ -1862,12 +1867,13 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
|||
checkOpen();
|
||||
try {
|
||||
boolean writeToWAL = true;
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
this.requestCount.incrementAndGet();
|
||||
Integer lid = getLockFromId(delete.getLockId());
|
||||
HRegion region = getRegion(regionName);
|
||||
if (!region.getRegionInfo().isMetaTable()) {
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
}
|
||||
Integer lid = getLockFromId(delete.getLockId());
|
||||
region.delete(delete, lid, writeToWAL);
|
||||
|
||||
this.syncWal(region);
|
||||
} catch (Throwable t) {
|
||||
throw convertThrowableToIOE(cleanup(t));
|
||||
|
@ -1882,10 +1888,11 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
|||
HRegion region = null;
|
||||
try {
|
||||
boolean writeToWAL = true;
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
Integer[] locks = new Integer[deletes.length];
|
||||
region = getRegion(regionName);
|
||||
|
||||
if (!region.getRegionInfo().isMetaTable()) {
|
||||
this.cacheFlusher.reclaimMemStoreMemory();
|
||||
}
|
||||
Integer[] locks = new Integer[deletes.length];
|
||||
for (i = 0; i < deletes.length; i++) {
|
||||
this.requestCount.incrementAndGet();
|
||||
locks[i] = getLockFromId(deletes[i].getLockId());
|
||||
|
|
Loading…
Reference in New Issue