diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java index b20231bce51..62042063a7c 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java @@ -274,13 +274,12 @@ public class ServerManager { long l = entry.getValue().getCompleteSequenceId(); if (existingValue != null) { if (l != -1 && l < existingValue) { - if (LOG.isDebugEnabled()) { - LOG.debug("RegionServer " + sn + - " indicates a last flushed sequence id (" + entry.getValue() + - ") that is less than the previous last flushed sequence id (" + - existingValue + ") for region " + - Bytes.toString(entry.getKey()) + " Ignoring."); - } + LOG.warn("RegionServer " + sn + + " indicates a last flushed sequence id (" + entry.getValue() + + ") that is less than the previous last flushed sequence id (" + + existingValue + ") for region " + + Bytes.toString(entry.getKey()) + " Ignoring."); + continue; // Don't let smaller sequence ids override greater // sequence ids. } diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java index a035c1a662f..c1389386b9f 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java @@ -763,7 +763,6 @@ public class HRegion implements HeapSize { // , Writable{ this.closing.set(false); this.closed.set(false); - this.lastFlushSeqId = nextSeqid; if (coprocessorHost != null) { status.setStatus("Running coprocessor post-open hooks"); coprocessorHost.postOpen(); @@ -1626,7 +1625,8 @@ public class HRegion implements HeapSize { // , Writable{ */ boolean shouldFlush() { // This is a rough measure. - if (this.lastFlushSeqId + this.flushPerChanges < this.sequenceId.get()) { + if (this.lastFlushSeqId > 0 + && (this.lastFlushSeqId + this.flushPerChanges < this.sequenceId.get())) { return true; } if (flushCheckInterval <= 0) { //disabled