Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vPw6S-0028MX-1G for pgsql-hackers@arkaria.postgresql.org; Mon, 01 Dec 2025 05:05:36 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vPw6Q-000FXo-0V for pgsql-hackers@arkaria.postgresql.org; Mon, 01 Dec 2025 05:05:34 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vPw6P-000FXg-2l for pgsql-hackers@lists.postgresql.org; Mon, 01 Dec 2025 05:05:34 +0000 Received: from mail-lf1-x136.google.com ([2a00:1450:4864:20::136]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vPw6N-002W24-1U for pgsql-hackers@lists.postgresql.org; Mon, 01 Dec 2025 05:05:33 +0000 Received: by mail-lf1-x136.google.com with SMTP id 2adb3069b0e04-5942bac322dso3952240e87.0 for ; Sun, 30 Nov 2025 21:05:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764565531; x=1765170331; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=nXIbGOa99t/ubAhGQ9nivnKicJlVMgO+EJmO6tmiWhQ=; b=DQK7tbWRnw5wqjnfcHsfMFxdu2NBdP0tXo7NnVn9Q57SCMdkmeqKPelaebV1lWQrwh nWYHjouJ0btBgVhPSgLSN6Uy7F6u4kAs+8BamyT8mbtlGFaLHB4s7gevErcBqde+dFdl 6x3m+rhy+M3LKJba0NfIS7xkqFJ4acqtKS4OAnVxTwsqBv7Q5tS3sCYuo+CcPllqXzgH qXArNWq1SoMsFO9kgxsndxtLafcLhrAi8Vn3wPo6Gs3iwWzWF/to/5QxR2HA2eq4Zn/i 0r7XBbhuKIddtwnAVB8rbuXzglMiGSWyJGVaAPGzPmxdd9sfGQwhucxPAW86YD42YmhG 9ThQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764565531; x=1765170331; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nXIbGOa99t/ubAhGQ9nivnKicJlVMgO+EJmO6tmiWhQ=; b=JfqNGcok458EdkiUFe06lBw1/fj2hC7A7NSmh+NPG2w7xFYAOFD+Z+qMVCN72KCBzF Zr3AfMxvQgu9ZQCfuF7zlyKDRicN6xNgYE6yk0moxCdgcMDZNO4pPlxyGCvXvU86HGpw wJxejtRnjtrJ1/69d5o6R0MNTtx33M5vN7wU2rNV2IljMFlqhZUSC9spt5t6xswGHogq P46wHpKpe0jLwyyuDFrgIdc7BM1ym49Ps/DdrXbcDHARK4+3xkMJkWuGLrYTt9IqIXBU 2ijI65IWhIy2DlQ9VUR/kVWKwjNIQKeIxrw8VtePISbimlUZe0ptEt46OqfxHkXkYB6W mfPg== X-Forwarded-Encrypted: i=1; AJvYcCUdOu92ViMagq1/1P2/YL/cHrZC1syGQpKbZySL1fVnqT3ThbeffJOyanC2hGG/IQf/9Adeu54hJDY3jBHy@lists.postgresql.org X-Gm-Message-State: AOJu0Yx3jcCopnCXtpwIMPL8rURzfBAspijRHIYRVpStT/ekY9wEwLQC x0Qe5Nw+UfRZCr5m+tlqdI+//aZe/0zFrPHs8J+eivOfdQ6WcFIhjbTDWIUK8IWJ3rGyva08D96 lfCaluUiSQ5pElph/qIC5NVyMNkTd3jQ= X-Gm-Gg: ASbGncuXUH+kck0NkbKMPjNsR5wRDrmCjEsA5WrZnIsyCgYLZalzy5bXZ/OuLtwuV5r 62qwTuCCKlz1SISYnOJ1ZsNjM8WDKX+Ztod2/wnaoz3V17LXKT97RYjynZ91DSIlkM5A+w7hR57 RNjObnej6zC9CEZqCAQip/P8knxy6C3J8ubTgPNU56FPZKZpn9X0Faf4Q7y+luucV5Qz4RpiXsW 0wSFsWBczvP7QhDgxwKd2IcJD+ke4t303Rvbg32wvLVHvey9la0iu8nyHMDhzcKLzUuq2lVzTVq DTLTiuU5DiMMgpObaL8CbO14TyUW9qp4k1xmqNvq X-Google-Smtp-Source: AGHT+IFGRBxFP7v72A75322gzWCoyQw33UiOzTwlZpQfkofeOksV0CoYmhL1wqn8oAhJRe2f63yzQ0oc1IBCpGyXmSM= X-Received: by 2002:a05:6512:3183:b0:595:8004:20f8 with SMTP id 2adb3069b0e04-596a3ead00dmr13882755e87.17.1764565530261; Sun, 30 Nov 2025 21:05:30 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Ajit Awekar Date: Mon, 1 Dec 2025 10:35:19 +0530 X-Gm-Features: AWmQ_blpOkQBWXT1a59W7OLkYF_FekiMLZlztig71gZN3eP-d-giEMkYv7uIuzo Message-ID: Subject: Re: Add GoAway protocol message for graceful but fast server shutdown/switchover To: Jelte Fennema-Nio Cc: Kirill Reshke , Jelte Fennema-Nio , PostgreSQL Hackers , Dave Cramer , Jacob Champion , Heikki Linnakangas Content-Type: multipart/alternative; boundary="0000000000009d3c530644dced49" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000009d3c530644dced49 Content-Type: text/plain; charset="UTF-8" Hi Jelte, Thank you for proposing the GoAway protocol message. I've developed a patch that serves as a strong, immediate use case for its inclusion. https://www.postgresql.org/message-id/flat/CAER375OvH3_ONmc-SgUFpA6gv_d6eNj2KdZktzo-f_uqNwwWNw%40mail.gmail.com Thanks & Best Regards, Ajit On Fri, 24 Oct 2025 at 17:24, Jelte Fennema-Nio wrote: > On Fri Oct 24, 2025 at 7:04 AM CEST, Kirill Reshke wrote: > > On Thu, 23 Oct 2025 at 18:05, Jelte Fennema-Nio wrote: > > Im +1 on this idea. This is something I wanted back in 2020, when > > implementing the 'online restart' feature for odyssey[0], but never > > bothered to create a thread. > > Yeah, to be clear: A big goal of this is definitely to be used by > poolers/proxies/middleware. Those systems will often be more frequently > restarted than the actual database servers, so being able to do that > quickly without disrupting active connections is much more important > there than with plain PostgreSQL servers. > > > About patches: > > Thanks for the review. Attached is a new patchset. I think I addressed > all of your comments (I almost fully rewrote the docs). I also fixed > two other issues that I found: > - updating docs for 3.3 in more places > - handling the GoAway message in more code paths on the client side > > --0000000000009d3c530644dced49 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Jelte,

Thank you for proposing th= e GoAway protocol message.=C2=A0

I've developed a pa= tch that serves as a strong, immediate use case for its inclusion.=C2=A0https://www.postgresql.org/me= ssage-id/flat/CAER375OvH3_ONmc-SgUFpA6gv_d6eNj2KdZktzo-f_uqNwwWNw%40mail.gm= ail.com


Thanks & Best Regards,

Ajit


On Fri, 24 Oct 2025 at 17:24, Jelte Fennema-N= io <postgres@jeltef.nl> wro= te:
On Fri Oct 2= 4, 2025 at 7:04 AM CEST, Kirill Reshke wrote:
> On Thu, 23 Oct 2025 at 18:05, Jelte Fennema-Nio <me@jeltef.nl> wrote:
> Im +1 on this idea. This is something I wanted back in 2020, when
> implementing the 'online restart' feature for odyssey[0], but = never
> bothered to create a thread.

Yeah, to be clear: A big goal of this is definitely to be used by
poolers/proxies/middleware. Those systems will often be more frequently
restarted than the actual database servers, so being able to do that
quickly without disrupting active connections is much more important
there than with plain PostgreSQL servers.

> About patches:

Thanks for the review. Attached is a new patchset. I think I addressed
all of your comments (I almost fully rewrote the docs). I also fixed
two other issues that I found:
- updating docs for 3.3 in more places
- handling the GoAway message in more code paths on the client side

--0000000000009d3c530644dced49--