HBASE-990 NoSuchElementException in flushSomeRegions

git-svn-id: https://svn.apache.org/repos/asf/hadoop/hbase/trunk@712944 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2008-11-11 05:31:12 +00:00
parent 1a0fc48508
commit 4171e16016
2 changed files with 5 additions and 0 deletions

View File

@ -68,6 +68,7 @@ Release 0.19.0 - Unreleased
HBASE-951 Either shut down master or let it finish cleanup HBASE-951 Either shut down master or let it finish cleanup
HBASE-964, HBASE-678 provide for safe-mode without locking up HBase "waiting HBASE-964, HBASE-678 provide for safe-mode without locking up HBase "waiting
for root region" for root region"
HBASE-990 NoSuchElementException in flushSomeRegions
IMPROVEMENTS IMPROVEMENTS
HBASE-901 Add a limit to key length, check key and value length on client side HBASE-901 Add a limit to key length, check key and value length on client side

View File

@ -221,6 +221,10 @@ class MemcacheFlusher extends Thread implements FlushRequester {
private synchronized void flushSomeRegions() { private synchronized void flushSomeRegions() {
SortedMap<Long, HRegion> m = SortedMap<Long, HRegion> m =
this.server.getCopyOfOnlineRegionsSortedBySize(); this.server.getCopyOfOnlineRegionsSortedBySize();
if (m.size() <= 0) {
LOG.info("No online regions to flush though we've been asked flush some.");
return;
}
// keep flushing until we hit the low water mark // keep flushing until we hit the low water mark
while (server.getGlobalMemcacheSize() >= globalMemcacheLimitLowMark) { while (server.getGlobalMemcacheSize() >= globalMemcacheLimitLowMark) {
// flush the region with the biggest memcache // flush the region with the biggest memcache