Skip to content
Snippets Groups Projects
Commit 10f0a1b5 authored by Vladimir Davydov's avatar Vladimir Davydov Committed by Konstantin Osipov
Browse files

vinyl: yield while adding run slices to ranges on dump

The loop over all ranges can take long so we should yield once in a
while in order not to stall the TX thread. The problem is we can't
delete dumped in-memory trees until we've added a slice of the new run
to each range, so if we yield while adding slices, a concurrent fiber
will see a range with a slice containing statements present in in-memory
trees, which breaks the assumption taken by merge iterator that its
sources don't have duplicates. Handle this by filtering out newly dumped
runs by LSN in vy_read_iterator_add_disk().
parent 7a18727a
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment