Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
0.96.0, 2.0.0
-
None
-
None
-
None
Description
Test scenario:
put(KV, timestamp=100)
put(KV, timestamp=200)
delete(KV, timestamp=200, with MutationProto.DeleteType.DELETE_ONE_VERSION)
get(KV) => returns value at timestamp=100 (OK)
put(KV, timestamp=200)
get(KV) => returns value at timestamp=100 (but not the one at timestamp=200 that was "reborn" by the previous put)
Is that normal?
I ran into this bug while running the integration tests at https://github.com/OpenTSDB/asynchbase/pull/60 – the first time you run it, it passes, but after that, it keeps failing. Sorry I don't have the corresponding HTable-based code but that should be fairly easy to write.
I only tested this with 0.96.0, dunno yet how this behaved in prior releases.
My hunch is that the tombstone added by the DELETE_ONE_VERSION keeps shadowing the value even after it's reborn.
Attachments
Issue Links
- relates to
-
HBASE-14070 Hybrid Logical Clocks for HBase
- Reopened