Details
-
Sub-task
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
hbase-11339
-
None
-
Reviewed
Description
Now in the implementation of the isRetainDeleteMarkers method, the code look like,
return (this.retainDeleteMarkers != null) ? this.retainDeleteMarkers.booleanValue() : isAllFiles();
It means for a major compaction in a normal store, this method returns true. Consequently the delete marks could not be deleted in the major compaction, which leads the unit test TestKeepDeletes fails.
The correct implementation should be,
return (this.retainDeleteMarkers != null) ? this.retainDeleteMarkers.booleanValue() : !isAllFiles();