Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-21653

NewVersionBehaviorTracker.checkVersions() should allow cell type to be DELETE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.0.0, 2.1.1
    • None
    • API
    • major compaction, NEW_VERSION_BEHAVIOR

    Description

      `MajorCompactionScanQueryMatcher.match()` states that  "7. Delete marker need to be version counted together with puts they affect" which corresponds to a code path that can happen when KEEP_DELETED_CELLS is true. However, `NewVersionBehaviorTracker.checkVersions()` asserts that type cannot be DELETE.

      The AssertionError can be verified by running `TestKeepDeletes.testBasicScenario` with "-Dhbase.tests.new.version.behavior=true" after fixing it up to work as expected with NEW_VERSIONS_BEHAVIOR:
      --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeepDeletes.java
      +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeepDeletes.java
      @@ -135,7 +135,7 @@ public class TestKeepDeletes {
           g.setMaxVersions();
           g.setTimeRange(0L, ts+2);
           Result r = region.get(g);
      -    checkResult(r, c0, c0, T2, T1);
      +    checkResult(r, c0, c0, T2);

           // flush
           region.flush(true);

       

      Some more info in the following comment: https://issues.apache.org/jira/browse/HBASE-21545?focusedCommentId=16719510&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16719510

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              timoha Andrey Elenskiy
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: