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 1vkXfc-00GkWP-1c for pgsql-hackers@arkaria.postgresql.org; Tue, 27 Jan 2026 01:15:05 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vkXfb-00BQlC-1x for pgsql-hackers@arkaria.postgresql.org; Tue, 27 Jan 2026 01:15:03 +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 1vkXfb-00BQkq-0P for pgsql-hackers@lists.postgresql.org; Tue, 27 Jan 2026 01:15:03 +0000 Received: from mail-ed1-x52f.google.com ([2a00:1450:4864:20::52f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vkXfY-002U13-33 for pgsql-hackers@lists.postgresql.org; Tue, 27 Jan 2026 01:15:02 +0000 Received: by mail-ed1-x52f.google.com with SMTP id 4fb4d7f45d1cf-658078d6655so10196944a12.3 for ; Mon, 26 Jan 2026 17:15:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1769476498; cv=none; d=google.com; s=arc-20240605; b=PoPRhCCCkmSlhTW2jOJIX/XqLRXRHlCHullwRB6MYvpqOkcyYbHCERBfIc36rRpyuL 7opcXM57i7EPuqRaTkjgPolJCF0V1Y2iCIsdLQ86LEtAJJJO6rumUkCsXAWBz5DUmo3N AW7oVVjpu02cEfPf0Lyj/oRKl2BQVNjsmILfp664cwJ+Aro4GMPGxZFUE9yDiMb5U/F7 X+YFwSfIpP54L77FIS5jZutI0/0DimfEg3476r+4mt0cCfMb4zEvUfZad38e+PeU1d2+ xWJWOvUs/hacV3+suP9N5JDaFO5ts80m8yi+SmqDhtmHwpSMVyF23n9bu1rTeQ7DTkHQ 2TBg== 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=kGj4rfkBioRjKtlv0pb1HWLJu85zMyY8M4wH1bg+ous=; fh=AWZau3ioAdgMNCFO8TtfboxvpnL4w5s06cgTa0Bttpc=; b=UaqAuXN+2/tWE7Mlxq4p7QvNo4h5Q/APUJTkSKE3Xbi2p9Ia7iaDO5mwdtoa21uXCu 3RrfpL3oek2WFHOsUi1FNufCDfiJ98GIcej7DmlTDwtwuuX2odOs6vuhxEBNph5TepRc 8LyRf5ZqR9VH+wVcp9IXC28TMiM3DdsImU37dbyKjHdszU9AwpnyLm8saH5U9JlTsD5d HtxbqkmhJ+37d9VM1I89a7Oz6GT+jGluV+5T8VjXNMgwGVkaDZY9aAqOJbl2GK8pYuIe 2LOJfDzvJprlVpnbeH+6drDcOoG/lNkEagQPf0CM0nGmRvuA+MmWde+3FzLZ4ZkEtg2q a2nw==; 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=1769476498; x=1770081298; 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=kGj4rfkBioRjKtlv0pb1HWLJu85zMyY8M4wH1bg+ous=; b=b0mz1mu9Ob90chNk4aINbsxiwlqigUcZE7rjxp6gjHgTQWvhoFhpWsn46oxr1OwPWe iJPgGgGHmIAOf2IMiwDGPrdq4AHdpUOpmng37JIYqG2BKELsw5Fhelt2V8k8vwQNPNQz dpp6dWD7uKwe5MrsbS4P0BDj+Ah7Mr5Cku2VR45fh6RJypGUPpk414/kyrysMEjCiF94 GoI2tZEcGi8dqMhYW9zOSHnSz+TbvAq5XXD/aXSkzovHwfOEMLJ2fCCEfAbuHnIaJBnG 8qfmpRK0XHqsWP7gieeYhK9/JrcII7uKXr1GKg8L0fEe/WXc0ckaIYcfAe5PMfD8BwCq W5PQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769476498; x=1770081298; 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=kGj4rfkBioRjKtlv0pb1HWLJu85zMyY8M4wH1bg+ous=; b=olvU7Nw28sS0I5FaoAvvV+HthgeXCk2RhnEXqvCHKJ3qO7lcUSTmzYfvI4XeQ4U1tn LA4AQT1HeYvFNGuB1/SjN3xi5NeNKjvtxIOuHpPLQAqN13Vcor3vssfNYGLrG6pqgWI0 ct7+ZAL7DJ68Ny5bIHwE0Op+JORL6TCojJ4iNpbxl5pI5kDBDKMoJ7H5dwBeABlWKBzq USdoto+ffuv7SDUtWxGWZlDwc1SvSZBujhaMm1w7i2KHFKuSabxvw0qwYD1teFub0QEp cDWx15AfVFWTybmDCz0wYgPwr/C4/pK4ByvGNTJtt8pPSVwDX1TZGibJ6wrryX05SjzQ 0wVw== X-Forwarded-Encrypted: i=1; AJvYcCXN/QfVBkxYEd3KqZsMFHbpz+04g+NHSL7tD+IDLxqzPlAiY0Fk6mc33SMBgo8rBQrAR1V6+/Sqcy0oluH+@lists.postgresql.org X-Gm-Message-State: AOJu0Yw17pyCjBOESPpJyZJWVnhbwZfbhN6V2eP2JZ8aAZU4/m3OCBG1 PvNvHmA29H/nNSc9GaRLUaqVaIk9iDisj3Ty+UeAkrwD1CMg+EBzDzJp+6BSZq4AkXaD2kkwNNi PMCqjaQ6nFLtmFxJ2a2+xzdWN7egCt/Y= X-Gm-Gg: AZuq6aLJGZhiRtbPSR63FIwzg/au9TUY8aludT3YjPt1dFp8yk0INuEKvl80Dmylm+z PSd8VhJ3x6EZ/8uh+B5n96rkapmjzxel006cTS7gcfGTxCfAhTuLYUoxm2/BM8O3uqw2erIysZe btvtf1jI9+tmIpd4KDswgMtQL1b2nM55/pualZIqX/OFDnlemQUa5pCIwymLrzSn20IGXa9Vuew s6GSzwIBVnqwGvNqLlwQeHZlQWYoSBkwE7SgsiVV1WD9QXJ4mMouLmsCFlwNNofhsUH4H9FHEed Xa9Wsy/vMOF3qKVEoorjMMN1T8wgs8Pe0Rey/Gpv6oAbDhuHBIK1xw8p2WMPrxwKYrIsRyU= X-Received: by 2002:a05:6402:40d3:b0:64b:58bf:a05 with SMTP id 4fb4d7f45d1cf-658a609b50amr18802a12.18.1769476497698; Mon, 26 Jan 2026 17:14:57 -0800 (PST) MIME-Version: 1.0 References: <202601011659.ikh4ku4p3ovb@alvherre.pgsql> In-Reply-To: From: Xuneng Zhou Date: Tue, 27 Jan 2026 09:14:43 +0800 X-Gm-Features: AZwV_QhMGPB03B-niIjo0wbubFA8-tRrAJCAEooCI5HMq-8dk1cmtz927IC7o_Q Message-ID: Subject: Re: Implement waiting for wal lsn replay: reloaded To: Alexander Korotkov Cc: Heikki Linnakangas , Peter Eisentraut , Andres Freund , Thomas Munro , =?UTF-8?Q?=C3=81lvaro_Herrera?= , Chao Li , pgsql-hackers , Michael Paquier , jian he , Tomas Vondra , Yura Sokolov Content-Type: multipart/mixed; boundary="00000000000015a1690649545a73" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000015a1690649545a73 Content-Type: text/plain; charset="UTF-8" Hi Alexander, Heikki spotted a misplaced wake-up call for replay waiters in PerformWalRecovery. He suggested that the WaitLSNWakeup needs to be invoked immediately after wal record is applied to avoid the potential missed wake-ups when recovery stops/pauses/promotes. It makes sense to me. Please check the attached patch to fix that. -- Best, Xuneng --00000000000015a1690649545a73 Content-Type: application/octet-stream; name="v1-0001-Wake-LSN-waiters-before-recovery-target-stop.patch" Content-Disposition: attachment; filename="v1-0001-Wake-LSN-waiters-before-recovery-target-stop.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mkvwjfh40 RnJvbSAzZTY5MmM2MzY4MzhhOTI4OTE4MjY2MTc0YzNlMTM5Mjc0Mzg0NzAyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBhbHRlcmVnbzY1NSA8ODI0NjYyNTI2QHFxLmNvbT4KRGF0ZTog VHVlLCAyNyBKYW4gMjAyNiAwOTowMDozOSArMDgwMApTdWJqZWN0OiBbUEFUQ0ggdjFdIFdha2Ug TFNOIHdhaXRlcnMgYmVmb3JlIHJlY292ZXJ5IHRhcmdldCBzdG9wCgogIE1vdmUgV2FpdExTTldh a2V1cCgpIGltbWVkaWF0ZWx5IGFmdGVyIEFwcGx5V2FsUmVjb3JkKCkgc28gd2FpdGVycyBhcmUK ICBzaWduYWxlZCBldmVuIHdoZW4gcmVjb3ZlcnlTdG9wc0FmdGVyKCkgYnJlYWtzIG91dCBmb3Ig cGF1c2UvcHJvbW90aW9uCiAgdGFyZ2V0cy4KLS0tCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNh bS94bG9ncmVjb3ZlcnkuYyB8IDE0ICsrKysrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Fj Y2Vzcy90cmFuc2FtL3hsb2dyZWNvdmVyeS5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0v eGxvZ3JlY292ZXJ5LmMKaW5kZXggYjkzOTNlNTUxYjcuLjM2ZGFhM2Q4NTg3IDEwMDY0NAotLS0g YS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYworKysgYi9zcmMvYmFj a2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYwpAQCAtMTc3NywxMyArMTc3Nyw2IEBA IFBlcmZvcm1XYWxSZWNvdmVyeSh2b2lkKQogCQkJICovCiAJCQlBcHBseVdhbFJlY29yZCh4bG9n cmVhZGVyLCByZWNvcmQsICZyZXBsYXlUTEkpOwogCi0JCQkvKiBFeGl0IGxvb3AgaWYgd2UgcmVh Y2hlZCBpbmNsdXNpdmUgcmVjb3ZlcnkgdGFyZ2V0ICovCi0JCQlpZiAocmVjb3ZlcnlTdG9wc0Fm dGVyKHhsb2dyZWFkZXIpKQotCQkJewotCQkJCXJlYWNoZWRSZWNvdmVyeVRhcmdldCA9IHRydWU7 Ci0JCQkJYnJlYWs7Ci0JCQl9Ci0KIAkJCS8qCiAJCQkgKiBJZiB3ZSByZXBsYXllZCBhbiBMU04g dGhhdCBzb21lb25lIHdhcyB3YWl0aW5nIGZvciB0aGVuIHdhbGsKIAkJCSAqIG92ZXIgdGhlIHNo YXJlZCBtZW1vcnkgYXJyYXkgYW5kIHNldCBsYXRjaGVzIHRvIG5vdGlmeSB0aGUKQEAgLTE3OTQs NiArMTc4NywxMyBAQCBQZXJmb3JtV2FsUmVjb3Zlcnkodm9pZCkKIAkJCQkgcGdfYXRvbWljX3Jl YWRfdTY0KCZ3YWl0TFNOU3RhdGUtPm1pbldhaXRlZExTTltXQUlUX0xTTl9UWVBFX1NUQU5EQllf UkVQTEFZXSkpKQogCQkJCVdhaXRMU05XYWtldXAoV0FJVF9MU05fVFlQRV9TVEFOREJZX1JFUExB WSwgWExvZ1JlY292ZXJ5Q3RsLT5sYXN0UmVwbGF5ZWRFbmRSZWNQdHIpOwogCisJCQkvKiBFeGl0 IGxvb3AgaWYgd2UgcmVhY2hlZCBpbmNsdXNpdmUgcmVjb3ZlcnkgdGFyZ2V0ICovCisJCQlpZiAo cmVjb3ZlcnlTdG9wc0FmdGVyKHhsb2dyZWFkZXIpKQorCQkJeworCQkJCXJlYWNoZWRSZWNvdmVy eVRhcmdldCA9IHRydWU7CisJCQkJYnJlYWs7CisJCQl9CisKIAkJCS8qIEVsc2UsIHRyeSB0byBm ZXRjaCB0aGUgbmV4dCBXQUwgcmVjb3JkICovCiAJCQlyZWNvcmQgPSBSZWFkUmVjb3JkKHhsb2dw cmVmZXRjaGVyLCBMT0csIGZhbHNlLCByZXBsYXlUTEkpOwogCQl9IHdoaWxlIChyZWNvcmQgIT0g TlVMTCk7Ci0tIAoyLjUxLjAKCg== --00000000000015a1690649545a73--