On Sun, Oct 20, 2024 at 3:19 PM Andrey M. Borodin <x4...@yandex-team.ru> wrote: > > > > > On 19 Oct 2024, at 20:41, Junwang Zhao <zhjw...@gmail.com> wrote: > > > > I'm wondering why is the case, ISTM that we can do *p.current_blocknum > > = scanblkno* > > and *p.last_exclusive = num_pages* in each loop of the outer for? > > Thanks for reviewing! > AFAIK we cannot restart stream if it's finished, so we have a race condition > of main loop and callback caller. > Resolving this race condition would make code much more complex for a > relatively small benefit.
I'm not sure if I did not express myself correctly, I didn't mean to restart the stream, I mean we can create a new stream for each outer loop, I attached a refactor 0002 based on your 0001, correct me if I'm wrong. > > I'll address typos in next patch version, thank you for looking into this. > > > Best regards, Andrey Borodin. > -- Regards Junwang Zhao
v2-0001-Prototype-B-tree-vacuum-streamlineing.patch
Description: Binary data
v2-0002-refactor.patch
Description: Binary data