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 1w11m4-002Qc5-1D for pgsql-hackers@arkaria.postgresql.org; Fri, 13 Mar 2026 12:37:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w11m2-003ykR-2u for pgsql-hackers@arkaria.postgresql.org; Fri, 13 Mar 2026 12:37:51 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w11kn-003vkd-1L for pgsql-hackers@lists.postgresql.org; Fri, 13 Mar 2026 12:36:33 +0000 Received: from mail-oo1-xc2d.google.com ([2607:f8b0:4864:20::c2d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w11kl-00000002Sen-31fr for pgsql-hackers@lists.postgresql.org; Fri, 13 Mar 2026 12:36:33 +0000 Received: by mail-oo1-xc2d.google.com with SMTP id 006d021491bc7-679f6ee3fb0so899690eaf.2 for ; Fri, 13 Mar 2026 05:36:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773405390; cv=none; d=google.com; s=arc-20240605; b=d+50aqDTtnJp+KM0Zt2+uojJe9WhLOuhgeExEmf4iOsloBoaFhc1SzqTNYn0p3/0M2 ISTkN9ADjHiKDn6L1GoybNckj/eHLEqxyR/pR8sZ/r25oO5pLPI/6RrCha6QuKO8d84W RxWqMY2IUBJItjNW6VTlRPe1J7QHxIeJ1z9nOg8JEW7NFCIRci/f+aaWEeUcd9xCujDU zBC3Ezg0m1s0NHG3M+1GFyDclfkEZU06fGwQveZhYw6lMrzJMef6NKDamIuO8zBzIgoe 5BLo2U/BdQkhZFIIKg/Wi32dWL02b3TS9AvlqQXAnysxgGik1AiTqGav6Sw//cHfgVhg iw+Q== 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=DH8aX6Uq+2RJB0MOLPnuhnKV8ki26lU64ihucvvsMLg=; fh=ZzZOVMVhl5UdQxZjIFNvorNWdeYxD0YnBCjss6ffdBk=; b=FIxiHYUbHNwb4Y610ZvhVB6bwDqQBFVoAZaKrN+9thjKR/Cxjfb7WmL7Yo7gAIr+6j FjXBH/j113bGQjDvfL7LhRT9ENhedSKqRTF291Ze8y966qxkrk2wGbPGy8dFkUagHa5L HlmBNaKFn+8sq3spWg6SB3wZF0ZFYuJFCl5x7v3iw4Qp1CFV9vIj83mcTQBuOoIxao01 oOPwRQfVZvpBZpeenWbIOpEXmIXKsG2xdpsgufX0mjAMdMPyW3z204FAuvcgvgKWJw5q jpIa6Y5I9Qf0PGyxbbbiI3aB7yDngyjvuz+90ICRMbDTfNn7knifSb818cXuxFOfbhZE w4sw==; 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=1773405390; x=1774010190; 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=DH8aX6Uq+2RJB0MOLPnuhnKV8ki26lU64ihucvvsMLg=; b=A2Y6fxnEifg+PV+dom+Ilrn5VqQHf17bcgfz5FQ0Ce4ST0DMvXZcYU32nBZuwHAvdR DCNrrDeOrfQB3YrTTulUMWtZeFkTXxsBRa4NiQ7C6eSFnuoDRFW+aMD+iT1y9bOqFpLI Got0OeIsS4HPM+Sjy57wbdsgKEmqPG1IHFEMFXY4pCWbhHdd2zNDVflWVjZnU+LKuoy9 HldgNSHyl/ymA6BaST8NmxqSXbMYh1KVF6UkU2QS7nuA9CzZuIT6T00CC4uaqXA3DiWZ txgFI7lzDMzjfajzROmAYqowcZpKwJJMh2K9ZB4TZlzLKbQoWxuLbwaHsMDOC9QVKhfJ WeKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773405390; x=1774010190; 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=DH8aX6Uq+2RJB0MOLPnuhnKV8ki26lU64ihucvvsMLg=; b=jNPPowx7RnJEeKikYVEXujA4Zaol/TF4BlODHodzogu7smBePUMJG+DiW8+O5KhPlO KP/StVHSc+k0eToCdZoH9DTRL4A6T+Sxq012N1nFeH+DgGKHGxrHPPhrN3RgWRu7k8GS fmh2GIQd0/xL7C2KlRQugfzvlDdfuQ5X9y52VcjK29KLsa6+2uISJtjgxU8ERcE2KFha xkEWX5ETcek6x7EaS8jaCwIiEL50lTTpgp8iTEZYLa1E/MWPUCgEa5WuJgcT2KPt6ix8 7tQgPR49DFcd2OS5CpHaXI0Z1BDcO6TSMSrsxSdWdnb6LReHa5MVTKtKh1tdHp/h2fUa HeFQ== X-Forwarded-Encrypted: i=1; AJvYcCXMjErJ5l9VoJ7Ua0uB0/Es0NU/7CoQcWAJlLbLjEOp0lN5Wk5kDWz9yoojL0tGQCdpDLRQsRBKBEtDZHIz@lists.postgresql.org X-Gm-Message-State: AOJu0Yzi02zKVp6ctVJF6GVHufQs8ccDjpfQaJLq2DsGv3+DB9iuCrmG Gdw/+qKXTIyb+0Uc/5cml7/TgOfpFa22vcx2bOwo5ElGVmc5YN/8yWYuGlb/85AUydBFcXNvlYS 4CrsqzFw3K7tgK88w2qEJGRZ004nPt7k= X-Gm-Gg: ATEYQzx6zWuJVA5qlnxIpVo9pIXlSLX7ip7PQULDBaShGWIuUOs3W/5RZKy5nRbTiCB cD0vTRfeg18/nsKjuOT8cSH/xtLFHHVjT2y3fQhGJ43YEfNKziNWQsqR/pitRPLbxl0odpSOrfK w27Akiwv7Y0oB6av90tpihGUmP9CUn4qWiaZyQT1Cibf/8ztD5H0N4HRJdAhxP7yZNAdYJMrwyN yl1y2zPo4KJ4Irfq39gaxoTOyXqJwEeSoYf+LqhkbZ8CP4I+5tR077Gwm4zJZUnhg49xT7Bp1A6 LMcc1iB5NLV90MvfEAvItUxmburiq1yTiGAdnjF6MQ== X-Received: by 2002:a05:6820:468b:b0:67b:d1cc:db3b with SMTP id 006d021491bc7-67bda98fc9bmr1590065eaf.15.1773405389591; Fri, 13 Mar 2026 05:36:29 -0700 (PDT) MIME-Version: 1.0 References: <20260204213032.15bab46b@ardentperf.com> <177304694613.1094603.10800724073727441272.pgcf@coridan.postgresql.org> <017AD77A-21B6-4B0A-8847-207914D53CE0@gmail.com> In-Reply-To: <017AD77A-21B6-4B0A-8847-207914D53CE0@gmail.com> From: Fujii Masao Date: Fri, 13 Mar 2026 21:36:16 +0900 X-Gm-Features: AaiRm52yF7lk3C5vmnjByIkZ5p9cvkaXz9A_2ifnjJiG6bjYZ1VtBs4CRrmmenY Message-ID: Subject: Re: client_connection_check_interval default value To: Chao Li Cc: =?UTF-8?Q?H=C3=BCseyin_Demir?= , pgsql-hackers@lists.postgresql.org Content-Type: multipart/mixed; boundary="0000000000004a73fe064ce71e45" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000004a73fe064ce71e45 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Mar 10, 2026 at 10:42=E2=80=AFAM Chao Li w= rote: > > > > > On Mar 9, 2026, at 22:12, Fujii Masao wrote: > > > > On Mon, Mar 9, 2026 at 6:03=E2=80=AFPM H=C3=BCseyin Demir wrote: > >> > >> Hi Fujii, > >> > >> Thanks for the patch. The rate-limiting approach makes sense to me. A = couple of thoughts: > >> > >> 1) I think Chao Li's suggestion of using max(10s, deadlock_timeout) as= the rate limit interval is worth adopting. If someone has set deadlock_tim= eout to, say, 30s or 60s, they've already signaled they don't need frequent= lock-wait feedback. Logging every 10s after a 60s deadlock_timeout feels i= nconsistent with that intent. > > > > Or perhaps they expect the log message to be emitted only once, > > just after deadlock_timeout, similar to the current behavior when > > client_connection_check_interval is not set, I guess. > > > > I'm now starting thinking it might be better to preserve the existing > > behavior (emitting the message once per wait) regardless of whether > > client_connection_check_interval is set, and implement that first. > > > > If there is a need to emit the message periodically, we could add that > > as a separate feature later so that it works independently of > > the client_connection_check_interval setting. > > > > Thought? > > Yeah, IMHO, preserving the existing behavior is preferable. Logically, cl= ient_connection_check_interval and log_lock_waitsbelong to two different de= partments. Even though they cross paths at the implementation level today, = having the behavior of log_lock_waits change just because client_connection= _check_interval is adjusted seems surprising. So, attached is a patch that ensures the "still waiting on lock" message is reported at most once during a lock wait, even if the wait is interrupted. Regards, --=20 Fujii Masao --0000000000004a73fe064ce71e45 Content-Type: application/octet-stream; name="v2-0001-Ensure-still-waiting-on-lock-message-is-logged-on.patch" Content-Disposition: attachment; filename="v2-0001-Ensure-still-waiting-on-lock-message-is-logged-on.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mmovro060 RnJvbSBhM2RjYmJlZjM3NGUyNGFiODk1ZTUwMDU5Y2Y0MGZhOGE2MzU4ZGZhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IEZyaSwgMTMgTWFyIDIwMjYgMTQ6Mzc6NDMgKzA5MDAKU3ViamVjdDogW1BBVENIIHYyXSBF bnN1cmUgInN0aWxsIHdhaXRpbmcgb24gbG9jayIgbWVzc2FnZSBpcyBsb2dnZWQgb25seSBvbmNl CiBwZXIgd2FpdC4KCldoZW4gbG9nX2xvY2tfd2FpdHMgaXMgZW5hYmxlZCwgdGhlICJzdGlsbCB3 YWl0aW5nIG9uIGxvY2siIG1lc3NhZ2UgaXMgbm9ybWFsbHkKZW1pdHRlZCBvbmx5IG9uY2Ugd2hp bGUgYSBzZXNzaW9uIGNvbnRpbnVlcyB3YWl0aW5nLiBIb3dldmVyLCBpZiB0aGUgd2FpdCBpcwpp bnRlcnJ1cHRlZCwgZm9yIGV4YW1wbGUgYnkgd2FrZXVwcyBmcm9tIGNsaWVudF9jb25uZWN0aW9u X2NoZWNrX2ludGVydmFsLApTSUdIVVAgZm9yIGNvbmZpZ3VyYXRpb24gcmVsb2Fkcywgb3Igc2lt aWxhciBldmVudHMsIHRoZSBtZXNzYWdlIGNvdWxkIGJlCmVtaXR0ZWQgYWdhaW4gZWFjaCB0aW1l IHRoZSB3YWl0IHJlc3VtZXMuCgpGb3IgZXhhbXBsZSwgd2l0aCB2ZXJ5IHNtYWxsIGNsaWVudF9j b25uZWN0aW9uX2NoZWNrX2ludGVydmFsIHZhbHVlcwooZS5nLiwgMTAwIG1zKSwgdGhpcyBiZWhh dmlvciBjb3VsZCBmbG9vZCB0aGUgbG9ncyB3aXRoIHJlcGVhdGVkIG1lc3NhZ2VzLAptYWtpbmcg dGhlbSBkaWZmaWN1bHQgdG8gdXNlLgoKVG8gcHJldmVudCB0aGlzLCB0aGlzIGNvbW1pdCBndWFy ZHMgdGhlICJzdGlsbCB3YWl0aW5nIG9uIGxvY2siIG1lc3NhZ2Ugc28KaXQgaXMgcmVwb3J0ZWQg YXQgbW9zdCBvbmNlIGR1cmluZyBhIGxvY2sgd2FpdCwgZXZlbiBpZiB0aGUgd2FpdCBpcyBpbnRl cnJ1cHRlZC4KVGhpcyBwcmVzZXJ2ZXMgdGhlIGludGVuZGVkIGJlaGF2aW9yIHdoZW4gbm8gaW50 ZXJydXB0cyBvY2N1ci4KLS0tCiBzcmMvYmFja2VuZC9zdG9yYWdlL2xtZ3IvcHJvYy5jIHwgMzAg KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjQgaW5zZXJ0 aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9zdG9yYWdl L2xtZ3IvcHJvYy5jIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9sbWdyL3Byb2MuYwppbmRleCBkNDA3 NzI1ZTYwMi4uNWZiYzBkZmIxOTggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3N0b3JhZ2UvbG1n ci9wcm9jLmMKKysrIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9sbWdyL3Byb2MuYwpAQCAtMTMwOSw2 ICsxMzA5LDcgQEAgUHJvY1NsZWVwKExPQ0FMTE9DSyAqbG9jYWxsb2NrKQogCVRpbWVzdGFtcFR6 IHN0YW5kYnlXYWl0U3RhcnQgPSAwOwogCWJvb2wJCWFsbG93X2F1dG92YWN1dW1fY2FuY2VsID0g dHJ1ZTsKIAlib29sCQlsb2dnZWRfcmVjb3ZlcnlfY29uZmxpY3QgPSBmYWxzZTsKKwlib29sCQls b2dnZWRfbG9ja193YWl0cyA9IGZhbHNlOwogCVByb2NXYWl0U3RhdHVzIG15V2FpdFN0YXR1czsK IAlEZWFkTG9ja1N0YXRlIGRlYWRsb2NrX3N0YXRlOwogCkBAIC0xNjA2LDEyICsxNjA3LDI5IEBA IFByb2NTbGVlcChMT0NBTExPQ0sgKmxvY2FsbG9jaykKIAkJCX0KIAogCQkJaWYgKG15V2FpdFN0 YXR1cyA9PSBQUk9DX1dBSVRfU1RBVFVTX1dBSVRJTkcpCi0JCQkJZXJlcG9ydChMT0csCi0JCQkJ CQkoZXJybXNnKCJwcm9jZXNzICVkIHN0aWxsIHdhaXRpbmcgZm9yICVzIG9uICVzIGFmdGVyICVs ZC4lMDNkIG1zIiwKLQkJCQkJCQkJTXlQcm9jUGlkLCBtb2RlbmFtZSwgYnVmLmRhdGEsIG1zZWNz LCB1c2VjcyksCi0JCQkJCQkgKGVycmRldGFpbF9sb2dfcGx1cmFsKCJQcm9jZXNzIGhvbGRpbmcg dGhlIGxvY2s6ICVzLiBXYWl0IHF1ZXVlOiAlcy4iLAotCQkJCQkJCQkJCQkgICAiUHJvY2Vzc2Vz IGhvbGRpbmcgdGhlIGxvY2s6ICVzLiBXYWl0IHF1ZXVlOiAlcy4iLAotCQkJCQkJCQkJCQkgICBs b2NrSG9sZGVyc051bSwgbG9ja19ob2xkZXJzX3NidWYuZGF0YSwgbG9ja193YWl0ZXJzX3NidWYu ZGF0YSkpKSk7CisJCQl7CisJCQkJLyoKKwkJCQkgKiBHdWFyZCB0aGUgInN0aWxsIHdhaXRpbmcg b24gbG9jayIgbG9nIG1lc3NhZ2Ugc28gaXQgaXMKKwkJCQkgKiByZXBvcnRlZCBhdCBtb3N0IG9u Y2Ugd2hpbGUgd2FpdGluZyBmb3IgdGhlIGxvY2suCisJCQkJICoKKwkJCQkgKiBXaXRob3V0IHRo aXMgZ3VhcmQsIHRoZSBtZXNzYWdlIGNhbiBiZSBlbWl0dGVkIHdoZW5ldmVyIHRoZQorCQkJCSAq IGxvY2std2FpdCBzbGVlcCBpcyBpbnRlcnJ1cHRlZCAoZm9yIGV4YW1wbGUgYnkgU0lHSFVQIGZv cgorCQkJCSAqIGNvbmZpZyByZWxvYWQgb3IgYnkgY2xpZW50X2Nvbm5lY3Rpb25fY2hlY2tfaW50 ZXJ2YWwpLiBGb3IKKwkJCQkgKiBleGFtcGxlLCBpZiBjbGllbnRfY29ubmVjdGlvbl9jaGVja19p bnRlcnZhbCBpcyBzZXQgdmVyeQorCQkJCSAqIGxvdyAoZS5nLiwgMTAwIG1zKSwgdGhlIG1lc3Nh Z2UgY291bGQgYmUgbG9nZ2VkIHJlcGVhdGVkbHksCisJCQkJICogZmxvb2RpbmcgdGhlIGxvZyBh bmQgbWFraW5nIGl0IGRpZmZpY3VsdCB0byB1c2UuCisJCQkJICovCisJCQkJaWYgKCFsb2dnZWRf bG9ja193YWl0cykKKwkJCQl7CisJCQkJCWVyZXBvcnQoTE9HLAorCQkJCQkJCShlcnJtc2coInBy b2Nlc3MgJWQgc3RpbGwgd2FpdGluZyBmb3IgJXMgb24gJXMgYWZ0ZXIgJWxkLiUwM2QgbXMiLAor CQkJCQkJCQkJTXlQcm9jUGlkLCBtb2RlbmFtZSwgYnVmLmRhdGEsIG1zZWNzLCB1c2VjcyksCisJ CQkJCQkJIChlcnJkZXRhaWxfbG9nX3BsdXJhbCgiUHJvY2VzcyBob2xkaW5nIHRoZSBsb2NrOiAl cy4gV2FpdCBxdWV1ZTogJXMuIiwKKwkJCQkJCQkJCQkJCSAgICJQcm9jZXNzZXMgaG9sZGluZyB0 aGUgbG9jazogJXMuIFdhaXQgcXVldWU6ICVzLiIsCisJCQkJCQkJCQkJCQkgICBsb2NrSG9sZGVy c051bSwgbG9ja19ob2xkZXJzX3NidWYuZGF0YSwgbG9ja193YWl0ZXJzX3NidWYuZGF0YSkpKSk7 CisJCQkJCWxvZ2dlZF9sb2NrX3dhaXRzID0gdHJ1ZTsKKwkJCQl9CisJCQl9CiAJCQllbHNlIGlm IChteVdhaXRTdGF0dXMgPT0gUFJPQ19XQUlUX1NUQVRVU19PSykKIAkJCQllcmVwb3J0KExPRywK IAkJCQkJCShlcnJtc2coInByb2Nlc3MgJWQgYWNxdWlyZWQgJXMgb24gJXMgYWZ0ZXIgJWxkLiUw M2QgbXMiLAotLSAKMi41MS4yCgo= --0000000000004a73fe064ce71e45--