Poorna Chandra created PHOENIX-2993:
---------------------------------------

             Summary: Tephra: Prune invalid transaction set once all data for a 
given invalid transaction has been dropped
                 Key: PHOENIX-2993
                 URL: https://issues.apache.org/jira/browse/PHOENIX-2993
             Project: Phoenix
          Issue Type: New Feature
            Reporter: Poorna Chandra
            Assignee: Poorna Chandra


>From TEPHRA-35 -

In addition to dropping the data from invalid transactions we need to be able 
to prune the invalid set of any transactions where data cleanup has been 
completely performed. Without this, the invalid set will grow indefinitely and 
become a greater and greater cost to in-progress transactions over time.

To do this correctly, the TransactionDataJanitor coprocessor will need to 
maintain some bookkeeping for the transaction data that it removes, so that the 
transaction manager can reason about when all of a given transaction's data has 
been removed. Only at this point can the transaction manager safely drop the 
transaction ID from the invalid set.

One approach would be for the TransactionDataJanitor to update a table marking 
when a major compaction was performed on a region and what transaction IDs were 
filtered out. Once all regions in a table containing the transaction data have 
been compacted, we can remove the filtered out transaction IDs from the invalid 
set. However, this will need to cope with changing region names due to splits, 
etc.

Note: This will be moved to Tephra JIRA once the setup of Tephra JIRA is 
complete (INFRA-11445)




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

Reply via email to