vinyl: fix run_iterator to correctly process LE selects
If the iterator type is ITER_LE and a run_iterator can not find a start page (all page min_keys are >= select key), it would iterate over all pages starting from the last. Fix it by setting search_ended flag at the page search phase, before calling next_key. Closes #2614
Showing
- src/box/vy_read_iterator.c 26 additions, 12 deletionssrc/box/vy_read_iterator.c
- src/box/vy_run.c 6 additions, 3 deletionssrc/box/vy_run.c
- test/unit/vy_cache.c 0 additions, 1 deletiontest/unit/vy_cache.c
- test/vinyl/snapshot.result 36 additions, 0 deletionstest/vinyl/snapshot.result
- test/vinyl/snapshot.test.lua 13 additions, 0 deletionstest/vinyl/snapshot.test.lua
Loading
Please register or sign in to comment