Poorna Chandra created TEPHRA-199:
-------------------------------------

             Summary: Enforce maximum duration a transaction can be used for 
data writes
                 Key: TEPHRA-199
                 URL: https://issues.apache.org/jira/browse/TEPHRA-199
             Project: Tephra
          Issue Type: Sub-task
          Components: core
            Reporter: Poorna Chandra
            Assignee: Poorna Chandra
             Fix For: 0.10.0-incubating


Based on a comment from [~anew] in a PR [ 1 ] -

Question: Suppose I start a transaction, which times out, and therefore goes 
into the invalid list. A little later HBase performs a major compaction. This 
transaction and all its writes are removed from the table by the DataJanitor. A 
little later TxManager prunes its invalid transactions, and because this tx has 
been removed from HBase, it removes it from the invalid list.

The problem is if the program that started the transaction is still running. 
What if it performs another write after the transaction pruning? This would be 
an invalid version, but now it has been pruned from the invalid list and 
becomes visible.

[ 1 ] - 
https://github.com/apache/incubator-tephra/pull/19#issuecomment-258645956



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

Reply via email to