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

Feng Honghua commented on HBASE-10241:
--------------------------------------

I also encountered this issue when implementing JIRA-8721, the fix for "deletes 
can mask puts that happen after the delete", and already persisted mvcc in WAL, 
and then they can be used to recover region's correct mvcc during re-opening. 
Anyone who has interest can refer it :-)

Seems setting mvcc (per hfile) to zero for (minor, arguably) performance 
benefit can't offset the correctness penalty it brings. Persisting mvcc and 
survive them across regionservers is a matter of semantic correctness, seems 
most related issues can be resolved by making this correct, combining mvcc and 
seqid is not as critical as this correcting.

> implement mvcc-consistent scanners (across recovery)
> ----------------------------------------------------
>
>                 Key: HBASE-10241
>                 URL: https://issues.apache.org/jira/browse/HBASE-10241
>             Project: HBase
>          Issue Type: New Feature
>          Components: HFile, regionserver, Scanners
>    Affects Versions: 0.99.0
>            Reporter: Sergey Shelukhin
>            Assignee: Sergey Shelukhin
>         Attachments: Consistent scanners.pdf
>
>
> Scanners currently use mvcc for consistency. However, mvcc is lost on server 
> restart, or even a region move. This JIRA is to enable the scanners to 
> transfer mvcc (or seqId, or some other number, see HBASE-8763) between 
> servers. First, client scanner needs to get and store the readpoint. Second, 
> mvcc needs to be preserved in WAL. Third, the mvcc needs to be stored in 
> store files per KV and discarded when not needed.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to