Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
0.89.20100621
-
None
-
None
Description
TestAcidGuarantee has a test whereby it attempts to read a number of columns from a row, and every so often the first column of N is different, when it should be the same. This is a bug deep inside the scanner whereby the first peek() of a row is done at time T then the rest of the read is done at T+1 after a flush, thus the memstoreTS data is lost, and previously 'uncommitted' data becomes committed and flushed to disk.
One possible solution is to introduce the memstoreTS (or similarly equivalent value) to the HFile thus allowing us to preserve read consistency past flushes. Another solution involves fixing the scanners so that peek() is not destructive (and thus might return different things at different times alas).
Attachments
Attachments
Issue Links
- blocks
-
HBASE-3149 Make flush decisions per column family
- Closed
- is related to
-
HBASE-5121 MajorCompaction may affect scan's correctness
- Closed
-
HBASE-4570 Scan ACID problem with concurrent puts.
- Closed
- is required by
-
HBASE-4838 Port 2856 (TestAcidGuarantee is failing) to 0.92
- Closed
-
HBASE-3404 Compaction Ordering for Bulk Import Files
- Closed
-
HBASE-3290 Max Compaction Size
- Closed
- relates to
-
HBASE-3498 Memstore scanner needs new semantics, which may require new data structure
- Closed
-
HBASE-5569 Do not collect deleted KVs when they are still in use by a scanner.
- Closed
-
HBASE-3543 Get rid of "delete forward"
- Closed