[ https://issues.apache.org/jira/browse/HBASE-8763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13702436#comment-13702436 ]
Sergey Shelukhin commented on HBASE-8763: ----------------------------------------- I have another idea, related to this, that intends to solve problems with clock skew also. If user doesn't supply ts, we can also combine ts with seqId and mvcc :) That way conflicts due to clock skew won't happen assuming seqId doesn't go back; which it doesn't under current assumptions such as compactions and log recovery. If user does, we can store user ts and seqId or just user ts (but then user has to avoid conflicts, same as now). This makes mixed scenarios more difficult though, and some people may rely in default ts actually storing time. > [BRAINSTORM] Combine MVCC and SeqId > ----------------------------------- > > Key: HBASE-8763 > URL: https://issues.apache.org/jira/browse/HBASE-8763 > Project: HBase > Issue Type: Improvement > Components: regionserver > Reporter: Enis Soztutar > Fix For: 0.98.0 > > > HBASE-8701 and a lot of recent issues include good discussions about mvcc + > seqId semantics. It seems that having mvcc and the seqId complicates the > comparator semantics a lot in regards to flush + WAL replay + compactions + > delete markers and out of order puts. > Thinking more about it I don't think we need a MVCC write number which is > different than the seqId. We can keep the MVCC semantics, read point and > smallest read points intact, but combine mvcc write number and seqId. This > will allow cleaner semantics + implementation + smaller data files. > We can do some brainstorming for 0.98. We still have to verify that this > would be semantically correct, it should be so by my current understanding. -- 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