Re: Implement waiting for wal lsn replay: reloaded
От | Yura Sokolov |
---|---|
Тема | Re: Implement waiting for wal lsn replay: reloaded |
Дата | |
Msg-id | 099e7e18-6ac4-459c-acd9-700cf41bf315@postgrespro.ru обсуждение исходный текст |
Ответ на | Re: Implement waiting for wal lsn replay: reloaded (Alexander Korotkov <aekorotkov@gmail.com>) |
Ответы |
Re: Implement waiting for wal lsn replay: reloaded
Re: Implement waiting for wal lsn replay: reloaded |
Список | pgsql-hackers |
10.03.2025 14:30, Alexander Korotkov пишет: > On Fri, Feb 28, 2025 at 3:55 PM Yura Sokolov <y.sokolov@postgrespro.ru> wrote: >> 28.02.2025 16:03, Yura Sokolov пишет: >>> 17.02.2025 00:27, Alexander Korotkov wrote: >>>> On Thu, Feb 6, 2025 at 10:31 AM Yura Sokolov <y.sokolov@postgrespro.ru> wrote: >>>>> I briefly looked into patch and have couple of minor remarks: >>>>> >>>>> 1. I don't like `palloc` in the `WaitLSNWakeup`. I believe it wont issue >>>>> problems, but still don't like it. I'd prefer to see local fixed array, say >>>>> of 16 elements, and loop around remaining function body acting in batch of >>>>> 16 wakeups. Doubtfully there will be more than 16 waiting clients often, >>>>> and even then it wont be much heavier than fetching all at once. >>>> >>>> OK, I've refactored this to use static array of 16 size. palloc() is >>>> used only if we don't fit static array. >>> >>> I've rebased patch and: >>> - fixed compiler warning in wait.c ("maybe uninitialized 'result'"). >>> - made a loop without call to palloc in WaitLSNWakeup. It is with "goto" to >>> keep indentation, perhaps `do {} while` would be better? >> >> And fixed: >> 'WAIT' is marked as BARE_LABEL in kwlist.h, but it is missing from >> gram.y's bare_label_keyword rule > > Thank you, Yura. I've further revised the patch. Mostly added the > documentation including SQL command reference and few paragraphs in > the high availability chapter explaining the read-your-writes > consistency concept. Good day, Alexander. Looking "for the last time" to the patch I found there remains `pg_wal_replay_wait` function in documentation and one comment. So I fixed it in documentation, and removed sentence from comment. Otherwise v6 is just rebased v5. ------- regards Yura Sokolov aka funny-falcon
Вложения
В списке pgsql-hackers по дате отправления: