[ 
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)

Reply via email to