Details
-
Improvement
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
None
-
None
-
Reviewed
Description
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.
Attachments
Attachments
Issue Links
- breaks
-
HBASE-14460 [Perf Regression] Merge of MVCC and SequenceId (HBASE-8763) slowed Increments, CheckAndPuts, batch operations
- Closed
- is related to
-
HBASE-9905 Enable using seqId as timestamp
- Closed
-
HBASE-10856 Prep for 1.0
- Closed
- relates to
-
HBASE-11315 Keeping MVCC for configurable longer time
- Closed
-
HBASE-8770 deletes and puts with the same ts should be resolved according to mvcc/seqNum
- Closed