Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Iteration properties #59

Open
libors opened this issue Jun 15, 2021 · 0 comments
Open

Iteration properties #59

libors opened this issue Jun 15, 2021 · 0 comments

Comments

@libors
Copy link

libors commented Jun 15, 2021

I need regular database exports, which is an iteration over all records.
In my tests, when I create an iterator, records created after the iterator creation are not returned, I have no problem with that.
When I update a record during iteration (insert different value with the same key), sometimes it is not returned by the iterator. I guess this is because it is a different record, the old one is marked as deleted, and the new one behaves as the first case - records after iterator creation are not returned.
Also, it sometimes happens that when I update a record during iteration, the iterator returns both versions of the record with the same key. This I cannot reproduce in my tests, but happens regularly on a production DB with millions of records.
So if I wanted to achieve more consistent results from iteration (no missing updated records or duplicates), am I supposed to stop writing to DB while iterating? Or maybe also pause compaction?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant