Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-3137

Allow RYW scan mode to return rows if the picked timestamp is lower than the ancient history mark

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: client, tserver
    • Labels:
      None

      Description

      Thomas mentioned in the comment inĀ IMPALA-7184,

       - I create a Kudu table, insert some stuff into it, scan it back at READ_YOUR_WRITES. Everything works as expected.
       - I wait greater than 'tablet_history_max_age_sec' and attempt to scan it again at READ_YOUR_WRITES (using either the same KuduClient or a new one). This results in an error of the form 'Snapshot timestamp is earlier than the ancient history mark...'
      

      Today, the snapshot used to scan in RYW mode is max(propagated timestamp + 1, clean time). If the tablet hasn't been written to recently, a tablet's clean time can fall well before the AHM. If there are no ops in flight, it might be worth considering some other timestamps, e.g. now, now minus the AHM, the current safe time, etc., or escalating a RYW scan to READ_LATEST if the propagated timestamp has passed.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                awong Andrew Wong
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: