You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@omid.apache.org by "Ohad Shacham (JIRA)" <ji...@apache.org> on 2017/01/03 07:20:58 UTC

[jira] [Created] (OMID-58) Snapshot isolation violation in read only transactions

Ohad Shacham created OMID-58:
--------------------------------

             Summary: Snapshot isolation violation in read only transactions
                 Key: OMID-58
                 URL: https://issues.apache.org/jira/browse/OMID-58
             Project: Apache Omid
          Issue Type: Bug
            Reporter: Ohad Shacham


Read only transactions in snapshot isolation cannot conflict with any other transaction. Therefore, the commit process does not contact the TSO and mark the transaction as committed.

This can cause to snapshot isolation violation in cases where the coprocessor deletes information from HBase that changes the snapshot of an inflight read only transaction t. t in this case will be marked as committed, even thought it did not read a consistent snapshot.
t would be aborted if the commit process would contact the tso because its read timestamp is smaller than the low water mark.

A solution for this would be to contact the TSO, check the low water mark, identify in the requestProcessor that the transaction is read only, and immediately return a result using the reply processor. This will reduce the latency (v.s. the regular flow) of read only transactions, while maintaining snapshot isolation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)