Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-5373

GlobalIndexChecker should treat the rows created by the previous design as unverified

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.0, 4.14.2
    • Fix Version/s: 4.15.0, 5.1.0
    • Labels:
      None

      Description

      For the ease of transition from the old global secondary index design to the new one (without having read performance impact), GlobalIndexChecker treats existing index rows (i.e., the rows created by the previous design) as verified. We have discovered that this would lead to keeping stale index rows around forever and including them in the result of queries. A stale index row is a row for which we do not have the corresponding data table row. The reason that we do not have the data table row is either the row is deleted (but not the corresponding index row(s)), or the data table and index rows are written with different timestamps. The assumption was that such rows would be fixed by index rebuild. Unfortunately, without dropping or truncating index tables, these stale rows may not be fixed by index rebuild. Thus, GlobalIndexChecker should treat the rows created by the previous design as unverified.

        Attachments

        1. PHOENIX-5373.master.001.patch
          16 kB
          Kadir OZDEMIR
        2. PHOENIX-5373.4.x-HBase-1.4.001.patch
          17 kB
          Kadir OZDEMIR
        3. PHOENIX-5373.master.002.patch
          16 kB
          Kadir OZDEMIR
        4. PHOENIX-5373.4.x-HBase-1.4.002.patch
          17 kB
          Kadir OZDEMIR

          Issue Links

            Activity

              People

              • Assignee:
                kozdemir Kadir OZDEMIR
                Reporter:
                kozdemir Kadir OZDEMIR
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 50m
                  1h 50m