-
Notifications
You must be signed in to change notification settings - Fork 0
Description
--- As of 2026-01-26T14:08:39.000Z ---
Fujii Masao provides detailed technical feedback on Andrey Silitskiy's patch for walsender immediate shutdown. The original problem occurred when walsender's output buffer was full and ereport() tried to send a message during immediate shutdown, causing the process to hang. Silitskiy changed the log level to LOG_SERVER_ONLY to prevent sending messages to replicas. Masao raises concerns about proc_exit() potentially sending additional messages and suggests resetting whereToSendOutput. He proposes an alternative SIGTERM-based approach where postmaster sends SIGTERM to walsenders. Masao provides extensive documentation suggestions, including clarifying wait_flush benefits for switchovers, updating parameter ordering and comments, correcting enum indentation in typedefs.list, and fixing misleading comments about WalSndDoneImmediate(). He notes the abort() call seems unnecessary and questions whether the function should be called under got_STOPPING=true conditions.
藤井雅夫对Andrey Silitskiy的walsender立即关闭补丁提供详细技术反馈。原问题发生在walsender的输出缓冲区已满,而ereport()在立即关闭期间试图发送消息,导致进程挂起。Silitskiy将日志级别改为LOG_SERVER_ONLY以防止向副本发送消息。雅夫担心proc_exit()可能发送额外消息,建议重置whereToSendOutput。他提出基于SIGTERM的替代方案,让postmaster向walsenders发送SIGTERM。雅夫提供大量文档建议,包括阐明wait_flush对切换的好处、更新参数顺序和注释、在typedefs.list中修正枚举缩进、修复关于WalSndDoneImmediate()的误导性注释。他指出abort()调用似乎不必要,质疑该函数是否应在got_STOPPING=true条件下调用。
participants - 参与者:
- a.silitskiy@postgrespro.ru
- aekorotkov@gmail.com
- amit.kapila16@gmail.com
- andres@anarazel.de
- dilipbalaut@gmail.com
- horikyota.ntt@gmail.com
- htamfids@gmail.com
- kuroda.hayato@fujitsu.com
- masao.fujii@gmail.com
- michael@paquier.xyz
- osumi.takamichi@fujitsu.com
- peter.eisentraut@enterprisedb.com
- sawada.mshk@gmail.com
- smithpb2250@gmail.com
- v.davydov@postgrespro.ru