[ https://issues.apache.org/jira/browse/TEPHRA-199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15718838#comment-15718838 ]
ASF GitHub Bot commented on TEPHRA-199: --------------------------------------- Github user poornachandra commented on the issue: https://github.com/apache/incubator-tephra/pull/20 Thanks for the review @anew. I've addressed the comments, please take another look. > Regarding correctness, my major concern is that the (min(max invalid), min(inProgress)-1) is not a safe bound for transaction that are guaranteed not to write any more. I have filed TEPHRA-199 to address this, I'll make the changes in the next PR. Do you have a suggestion for a better name for `pruneUpperBoundTime`? Basically this is an upper bound for transactions that are not active (i.e, can be still used for writing). > 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)