[ 
https://issues.apache.org/jira/browse/HBASE-8721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13688227#comment-13688227
 ] 

Sergey Shelukhin commented on HBASE-8721:
-----------------------------------------

bq. I would firstly delete row1,cf:c,ts<=MAX_TIMESTAMP, and then put 
row1,cf:c,ts=5,foo.
As I said, this misuses timestamps as they stand. It uses timestamp and 
clock/mvcc at the same time... if you want later (in time) put to override 
earlier (in time) delete, then don't use explicit timestamps, and store the 
requisite value in a column or as part of row key. Allowing puts to be resolved 
one way and deletes the other way in the same table makes for confusing and 
inconsistent semantics for timestamps imo.
At this point we seem to be going in circles, my 2c are -0 on this feature.

                
> Deletes can mask puts that happen after the delete
> --------------------------------------------------
>
>                 Key: HBASE-8721
>                 URL: https://issues.apache.org/jira/browse/HBASE-8721
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>            Reporter: Feng Honghua
>         Attachments: HBASE-8721-0.94-V0.patch
>
>
> this fix aims for bug mentioned in http://hbase.apache.org/book.html 5.8.2.1:
> "Deletes mask puts, even puts that happened after the delete was entered. 
> Remember that a delete writes a tombstone, which only disappears after then 
> next major compaction has run. Suppose you do a delete of everything <= T. 
> After this you do a new put with a timestamp <= T. This put, even if it 
> happened after the delete, will be masked by the delete tombstone. Performing 
> the put will not fail, but when you do a get you will notice the put did have 
> no effect. It will start working again after the major compaction has run. 
> These issues should not be a problem if you use always-increasing versions 
> for new puts to a row. But they can occur even if you do not care about time: 
> just do delete and put immediately after each other, and there is some chance 
> they happen within the same millisecond."

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to