apache / apache/accumulo

Scanning a table without the versioning iterator can drop keys

Open
#5,951 3 comments 0 reactions 1 assignee Claimed by @DomGarguilo View on GitHub
bug
Dominant language
Java
Stars
1.2k
Forks
487
Avg merge
4d 5h
Merged PRs (30d)
13

Description

I have conclusively proved that if you scan a table without a versioning iterator, and that table contains identical keys but different values, keys will be dropped. I played with using batch scanners and single scanners, and I played with varying buffer sizes and the symptoms where the same; keys would be lost. I had to go to directly reading the rfile to be able to see all of the keys I needed for processing. None of the keys have the delete flag set.

Accumulo 2.1.4
Redhat 8

I have an example of a table with only 1 file that demonstrates this issue. I have not attempted to create a test example as of yet.

I expect that a scan of a table without any iterators or any delete keys would be equivalent to a direct scan of the rfiles.

I have noted that in the example I have, if I scan the separate rows directly then it is less likely to drop keys. However if I do a full scan of the table that I am more likely to drop keys.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.