[ https://issues.apache.org/jira/browse/HBASE-3300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell resolved HBASE-3300. ----------------------------------- Resolution: Not a Problem > force delete option for use cases that explicitly set version/timestamp > ----------------------------------------------------------------------- > > Key: HBASE-3300 > URL: https://issues.apache.org/jira/browse/HBASE-3300 > Project: HBase > Issue Type: Improvement > Reporter: Kannan Muthukkaruppan > > Background: For use cases that explicitly set versions, after a delete, it is > not possible to insert values with older versions. So for example if you did > a puts (v1) and delete (@ v2), subsequent puts with an older version (e.g., > v1) will not take effect since the delete has a higher version. > {code} > #1. PUT(row, col, version1, old-value) > #2. DELETE(row, col, version2) > #3. PUT(row, col, version1, new-value) > {code} > The row/col stays deleted, and this is expected behavior since the delete has > a higher timestamp. > Feature Request: It would be good to provide a "force" delete mechanism -- > something that allows the row or a specific column to be started with a clean > slate. i.e. forget about everything that happened to this item earlier, and > lets you start afresh. Without this there is no good cleanup mechanism for > use cases that set versions explicitly. > [Note: The only workaround for this depends on a subtle implementation detail > that major compactions discard delete markers. So if a major compaction > happened between steps #2 & #3, then you would in fact be able to put a value > with an older version.] > Thoughts? -- This message was sent by Atlassian JIRA (v6.2#6252)