diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java index 681dd3f..8fc15b3 100644 --- hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java +++ hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java @@ -5232,8 +5232,9 @@ public class HRegion implements HeapSize { // , Writable{ && CellUtil.matchingQualifier(results.get(idx),kv)) { oldKv = KeyValueUtil.ensureKeyValue(results.get(idx)); // allocate an empty kv once + long ts = Math.max(now, oldKv.getTimestamp()); newKV = new KeyValue(row.length, kv.getFamilyLength(), - kv.getQualifierLength(), now, KeyValue.Type.Put, + kv.getQualifierLength(), ts, KeyValue.Type.Put, oldKv.getValueLength() + kv.getValueLength(), oldKv.getTagsLengthUnsigned() + kv.getTagsLengthUnsigned()); // copy in the value