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 1voAmy-00GCdR-0b for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Feb 2026 01:37:40 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1voAmv-001fU4-2h for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Feb 2026 01:37:37 +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 1voAmv-001fTv-1I for pgsql-hackers@lists.postgresql.org; Fri, 06 Feb 2026 01:37:37 +0000 Received: from mail-dy1-x132e.google.com ([2607:f8b0:4864:20::132e]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1voAms-00000000lku-3bvI for pgsql-hackers@lists.postgresql.org; Fri, 06 Feb 2026 01:37:35 +0000 Received: by mail-dy1-x132e.google.com with SMTP id 5a478bee46e88-2b6a868ad45so176732eec.0 for ; Thu, 05 Feb 2026 17:37:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770341854; cv=none; d=google.com; s=arc-20240605; b=SJkz2Cs38GUKpcWmLNwQuXO9eKscfEBLIMnzBYavTNPefNVFYqzwf/n4im9UDRSYNx ApecIAeVvQJDFHgfSuIJ62gwc2ne9mVHdOtuOk7GPRJdu8PB7YuSlwFRzRnrMLTSBEml aQ16Ak+o4cHdQKm+ynus13+dt2y1lGycSAS4XpoSKRLLSz38d4VPyrbJyHVWAEaxQmpk Tz8hZzCGE8hS0/IZfeEjpUJBjMGeqwFG8mnY+6Q3FBaJaM7w/NFU9iSrHy0/izh0L0+x QAL867lShoFRpNTtp+EwedEGjPnJMv5rPLrpJ3SwF9+J3gqoKhHx26v/IsEFYN8Jqa+e L6LA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=UzIZ8ua1is5wBLflLnuDvQ7CEzzWo/gnO71d97nqxI8=; fh=w23O8+rc6ua2gIgIaZwKh8tFoJlwo7ABdoc3F8pwD3M=; b=hbN4YrfGTqk2fSvHmgN8nM2h6PQeTLKvdhoVdNrI01lvUoO+zyVKiIu3FWmcq9q+5e U2k2l7d41/J4ipntpAWhBfRACHUyI5m43KehsCziHFkKi+IDsm9WNX6B+jojb/P5jyCv EZ4QzCwrgrnMQj68DOf+igjs1wcJVdn2X/yQ2wp3O5S28z2G346EjfDRiCmt+rszTu80 61834TgsvCEZoYU+u8hj1oqCVrVqQIW54m67ukqgWlmz0LnMi587U7KjRuKIcT+LRM4D rIvsZ2ZKPRxfS0r+ztM7jE/muQh74ZoSqxObj28hOo9Ymw2dT87Rjahe/xgj3qPXsbyD Klfg==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770341854; x=1770946654; 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=UzIZ8ua1is5wBLflLnuDvQ7CEzzWo/gnO71d97nqxI8=; b=NfRQoonFDPgX/bIyR5pIJQb9jQIGzR1P4Vnghn0Lb5gpHCKQDnmQcPb1V37itsXnGQ pQCP8jotVcBIOlCnBFAaw9vG+tZLbPLpEwnD6Upwy5VoAOLeeZl9F9ESTyTqoKMTdAxT /YSEQM9kPTTrB9DOzdR3MryDGuB+IWa1EaIj7ejYBdKHO1sM9psftU/1cNkHVdzw2L4/ mLxgozomi+xJBJgD495GulbCKwntMzJwvKcVz54TDrEGhADTT031FmSEJGF2QGTYuR8t yRueHSUPnGKhKrWcBHFUAifDSfWw35rEOcx7P2/xBdUC2BYBmb+YAWJStOx69DAS5S0v oYDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770341854; x=1770946654; 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=UzIZ8ua1is5wBLflLnuDvQ7CEzzWo/gnO71d97nqxI8=; b=cqHvwnlnd1WHXZkBLL+ODolIrkqa5PA952EV9uXlQ82SZYsMuRTL0jvsqSQtF95UTt D0p8cGxihEnf9cFdADbUfNwl57Gj2LB2IiHGGU6svfxMh/u5gGjcNQdl1Chh5eQ6m83d xqEKpEXuH0FFZXoiWBReaLrp1CkxTVLHwWzFSQrE+R74awZ2kAcxe8uXHmg5UBuO7+/m iQg6nNBQRW+DqHvAT63+Ur1duHqWYAL9xEqOWIb476wCIuqvMMLNGxEmVg4Ag0H8St51 j72ggVFeWwp0ADcFz/S9c7Me9zYskJcba2+TjNSxiJ7dvnw6gCGe2cZ8HsnRnJiyzFHP KHZw== X-Forwarded-Encrypted: i=1; AJvYcCX7TYKqZG/iuKqm8EhizmAZ00tXPgbzDrYHDtMd30Mbe6spka243TTjkXRyTUkmJBLSYvM/M7Q67ZGGmhPP@lists.postgresql.org X-Gm-Message-State: AOJu0YwgHeCAKAPdKic7NqHLomRzSumlCd6KPVxUaviUHwgOnINKwKq9 R+tv4nqwJ54eEhVumwz2KcQLr0XYKRgv+OYhSB2arqJ9gXhg4Woa9gSAIq6nPdJC1VyK1XSyrPv z5NT+v6/nVl/aBbxxLgPKw6yONrGqkEU= X-Gm-Gg: AZuq6aI7jFwFvBL6iP8V+RTH+9T88TSlv6WPivN4D+d+7lRKbpoTyfh0RYb9TZWKXwQ v1qfdt5j++M+diaXH4aVlds17Q8iVWFnA/DubtcFFCH6i2m6O+9QFtNbTLD1dQtDlNKwNFMPvNH qDtOvnocPUUWH6B3HOMUJR1eNO+ULQYnZUOfB85H0x6t2G6fZ+sW5/pzDF1BDqQU/6Y6o+lb+X0 5yE4uLUK9Fuwjs3l2RRYn4BLuoTr+LukAwd0BR9B7RuFJ/VEvuIfxfT73ET3yK0U8pxFEp3I0YR AMkFSVeZQsexjcRPWcdAo4lZHvXQnf9elf0iHYXuIPnNUtb/GR9a X-Received: by 2002:a05:7300:d513:b0:2b4:849c:8dd8 with SMTP id 5a478bee46e88-2b856408420mr281811eec.3.1770341853653; Thu, 05 Feb 2026 17:37:33 -0800 (PST) MIME-Version: 1.0 References: <20260204213032.15bab46b@ardentperf.com> <20260205150452.00006167@ardentperf.com> <1667818.1770336112@sss.pgh.pa.us> In-Reply-To: From: Thomas Munro Date: Fri, 6 Feb 2026 14:36:56 +1300 X-Gm-Features: AZwV_QgNUoNRL3sH-t3QPcMe4Pg750fqhOPlAp0scidcai9a4vqHoWjN95xQ2h0 Message-ID: Subject: Re: client_connection_check_interval default value To: Jacob Champion Cc: Tom Lane , Fujii Masao , Jeremy Schneider , "pgsql-hackers@lists.postgresql.org" , Marat Buharov , Greg Sabino Mullane Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Some space cadet thoughts I recall wondering about back then: If one process had all the sockets, I suppose something could watch for POLLRDHUP/KEV_EOF from all of them and send an interrupt to the owner to handle in its next CFI, so that we don't have to have every backend polling its socket. Once we have a multithreaded server we could try that, but it might become more reasonable to consider with hypothetical models of socket management where there are executor threads that are not tried to a session and socket, which implies a new bit of architecture handling network events on behalf of sessions. I suppose in theory it could be the postmaster today (just don't close the client sockets after fork, and teach the postmaster's main loop to do that), and I vaguely recall something along those lines being shot down in some other thread... it might cause some extra contention in the kernel depending how it's implemented (IDK), but it'd obviously eat a lot of fd table entries which is probably what killed the notion... though we'll need that large socket table eventually (and perhaps we'll pay for it by sharing file fds somehow...). But either way, heartbeats might indeed make more sense, whatever the architecture.