Uploaded image for project: 'Phoenix Tephra'
  1. Phoenix Tephra
  2. TEPHRA-157

Visibility guarantees using transactions

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.6.4
    • core

    Description

      Transactions provide a consistent view of data to clients. Only writes from transactions that were successfully committed when a reader's transaction started are visible to readers. Because of this a reader and a writer will never conflict.

      However, there are cases where stronger visibility guarantees are required. After committing a change and before continuing, a writer may want to ensure that there are no readers with in-progress transactions that have not seen the change.

      In such a case either the readers will have to get a conflict when they commit, so that they retry and see the updated value, or the writer has to wait until all readers that have not see the change commit. This will ensure that after a given point of time, all readers will see the committed change.

      Phoenix's secondary index build is a use case that would benefit from such a visibility guarantee - https://issues.apache.org/jira/browse/PHOENIX-2478.

      It would be useful to have some constructs in Tephra that help clients get stronger visibility guarantees.

      Attachments

        Issue Links

          Activity

            People

              poorna Poorna Chandra
              poorna Poorna Chandra
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: