Re: Make wal_receiver_timeout configurable per subscription

Japin Li <japinli@hotmail.com>

From: Japin Li <japinli@hotmail.com>
To: Fujii Masao <masao.fujii@gmail.com>
Cc: Fujii Masao <masao.fujii@oss.nttdata.com>, Amit Kapila <amit.kapila16@gmail.com>, vignesh C <vignesh21@gmail.com>, Michael Paquier <michael@paquier.xyz>, Robert Haas <robertmhaas@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2026-02-05T04:06:45Z
Lists: pgsql-hackers
References: <a1414b64-bf58-43a6-8494-9704975a41e9@oss.nttdata.com>
	<CAA4eK1JtSN2OW4+xPMOoVfYF5LG+ZdBQ8LMAk1h_mCd5SsuCxw@mail.gmail.com>
	<CA+TgmobgPuxLWMbTzBE72yKDQJTXpCnGjtCN3v5N=u_F3uD_nw@mail.gmail.com>
	<aCumuj3V5geOw8YV@paquier.xyz>
	<CALDaNm0Ro-Z0JdsuZxEYRQxqdOOY2U3vRrPtRU=re4CB8Ee-2A@mail.gmail.com>
	<3ed7e711-102f-496d-93b8-8b2619d4d875@oss.nttdata.com>
	<CAA4eK1LSVODWq5aC92Q2PuHRiGqs68bZmumYbC-D7d39MCvukw@mail.gmail.com>
	<5780e93c-7183-4aeb-b3a9-0a5ba0ff7e02@oss.nttdata.com>
	<adf8214d-f2ae-4777-9ba0-33f18ab77e0b@oss.nttdata.com>
	<CAHGQGwG82P4s6tmYK=aEm-T7QfGJBZvXo=WZfckMkffsX6DZjQ@mail.gmail.com>
	<CAHGQGwHq0hP8zZVxaRrvoqD6ZJsWsTO8E_4QqPn5X3bEfEZSMQ@mail.gmail.com>
User-Agent: mu4e 1.12.12; emacs 29.3
Hi, Fujii

Date: Thu, 05 Feb 2026 12:06:45 +0800

On Thu, 05 Feb 2026 at 09:33, Fujii Masao <masao.fujii@gmail.com> wrote:
> On Thu, Oct 23, 2025 at 5:19 PM Fujii Masao <masao.fujii@gmail.com> wrote:
>>
>> On Mon, Jul 14, 2025 at 10:27 PM Fujii Masao
>> <masao.fujii@oss.nttdata.com> wrote:
>> > I've attached the rebased patches.
>>
>> Attached are the rebased versions of the patches.
>
> I've rebased the patches again.
>

Thanks for updating the patches.
I have one small comment on v4-0002:

@@ -104,6 +105,7 @@ typedef struct SubOpts
 	int32		maxretention;
 	char	   *origin;
 	XLogRecPtr	lsn;
+	char	   *wal_receiver_timeout;
 } SubOpts;

According to the comment above the SubOpts struct:

	Structure to hold a bitmap representing the user-provided CREATE/ALTER
        SUBSCRIPTION command options and the parsed/default values of each of them.

Since `wal_receiver_timeout` is a GUC-style interval value (typically stored as
integer milliseconds), wouldn't it be better to use an int32 here instead of a
string?


> Regards,
>
> -- 
> Fujii Masao
>
> [2. text/x-diff; v4-0001-Make-GUC-wal_receiver_timeout-user-settable.patch]...
>
> [3. text/x-diff; v4-0002-Add-per-subscription-wal_receiver_timeout-setting.patch]...

-- 
Regards,
Japin Li
ChengDu WenWu Information Technology Co., Ltd.



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add per-subscription wal_receiver_timeout setting.

  2. Make GUC wal_receiver_timeout user-settable.