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 1wcl6w-003bSZ-3D for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Jun 2026 14:31:23 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wcl6v-006M6A-1o for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Jun 2026 14:31:21 +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 1wcl6v-006M5j-09 for pgsql-hackers@lists.postgresql.org; Thu, 25 Jun 2026 14:31:21 +0000 Received: from mail-lj1-x22c.google.com ([2a00:1450:4864:20::22c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wcl6s-00000000CIb-43rJ for pgsql-hackers@lists.postgresql.org; Thu, 25 Jun 2026 14:31:20 +0000 Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-39ad656869bso1420691fa.0 for ; Thu, 25 Jun 2026 07:31:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1782397877; cv=none; d=google.com; s=arc-20260327; b=Daj9nwy5Oxb6DCxCoxQvXryphXkVxsmqPPRYRzcxMaMz0lVyA3uxXOSb7B6lZGH2R8 /dtF6x6XqVfx2JjZxXmOzuz9njy/bZgc8kmYVXVZWsH0a0nI2YvWW73k59Z2wfirmGbj 29BZcPJlXyjZ65D1Y9RIJ/2eZju9E8EHgMT+vr2tdMaMN8o4GR3Odl/mOJojeEHejFKB B488GpjnmBbJBhUYsqPx2FVa2+by4pq5QT2BEGpNsLCTOY2biGiXMpthi1tfwlF9rIXQ 6k7odyqD0D9U2is9jZQzQDHhwtQMzPWpkt7gDRpjwyhN5DrUqqdEAzNRaLku0BIGCX5i 61hQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=1HoX7Y0yxK9H2expRO5l2Uz0QFZVlrn6NEejSvVl5CY=; fh=d02dIN46oDhDlKtmYxb5MLFrbdldD8BFoU9tAYaSfoc=; b=DHqmxxF1frQxZxPwOed4Le8UQNaUAXVbgUIhq2vbyFO9K0acf+EZN8RPhVJrPvvWLR FfFow8q075UVv7DaccfxYSp9jpFwmZN41/JAuB4vT8lSxYEK1EM+JqopQpXEe04mBrQM ZcrSOKPhC5qgXr7q2mtVCydMPOsVRV6UoTy4o0LYlnKmfWCR6E9hO3QbPWbyIV+WzE/d u3OPP3U4jh2v9/+VTw4g9oMzXtvEdspbvJ63fvgvw6j1azKyAhjHZeR2f8/mFds8wq14 JxrxaYLXZxwbX2Kcj665ICwqTK5c55mcz1cA3XpDlNjnqYI6ZExYMyH4pf8w7eM6b5AQ 8EWw==; 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=20251104; t=1782397877; x=1783002677; 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=1HoX7Y0yxK9H2expRO5l2Uz0QFZVlrn6NEejSvVl5CY=; b=DA51LpjDNXApQFNRKPdNu8/XY5wzjWj6l1z6Q849fDx6JbT62QLxW8QJ5Vr18p4VdY 84Ni8+Yl7V1rpbO7caVSHse9D6VVbUYA+Cnr1mpdeoEGMOUJt55+KT2rS6lddmdMQgxl ojC6ASgHJOUy0RQYMePq6K2PG4MHhQaioHceBZWEgCh/1xLVUpANAR9NTt3mzp+TbViQ ms1p9pTOtXZso+SEp0fsPnzSjfJEt/xbpcOZrFkIZBCCrexXIgYx9iiOJtdQrDD/j+Vm Ie/iEpfC5ybiAzPUy8i9DpQQSJyo1Sd7qwSM9D69bJX6oJV4G0UP00mNla0Knm4Ul/D2 UAMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782397877; x=1783002677; 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=1HoX7Y0yxK9H2expRO5l2Uz0QFZVlrn6NEejSvVl5CY=; b=hBHXddUTWf2PNM/7SHLgGP1i45QUN7SmQpDJwfKKz4OkdrHYE1Tsfqc9/G+C0QInFX 3Tmj8v9Y7UZgDB2KZtJ7i17Oor+wkPkwV7iWg+izkOpgjgOsGpGf79GB0DVHlv7+j/7s N+EC8P+5mVFbkajsuZVv5qzVedKeiOJk5OC5vt0C6eSWfSF3mZVGz5TnH9ZJ26BeZi0l 73igM+3aio8I+VHUvGhS0OxPL7AyEbmstaW422nOUejzv0xeiq/IUMXo052tUPWeMAid iNQ+No7dMrNSI4/WbXaSx31lUoJ7IzQJROTgArtTs05d2Psilo3yDMWQNeOqBoj2lzpM lgVg== X-Forwarded-Encrypted: i=1; AHgh+Rr7hKA3PHS0NyfKkttRGSjy8sBl9A27aNn8yCxNK7W9HkIVfbKLZi76JXczw7y2h78axyveYujb7Fh6I70Q@lists.postgresql.org X-Gm-Message-State: AOJu0YwEhYb3yXzCa80fwYGW6h1S5vqdZYDpfwu9G7JD2P/66LykimrT aGtgZUDBAj96lebfOPs3YHh2hsxZxQIxpQOphkxhNplg5U07wvEph9W67OeEPgS89C7U40FdRKt w4cqYJg7WAkoA4Rf2owTues8IoNvIJw== X-Gm-Gg: AfdE7cmTQQ+qxHGCIQ9CRS9JCAV2nQ7ssi86o4GylfgdAVWCMFwbzH6L9gNHOAlCZOh 4E1cO4Zmre2dYY4YU+rWVFHuVXpN0o8ANeEFGVwtnLeIMSCEU110FitVr2H8ToX3MQFEP3Rhxc+ vEL0IPSYouQPxiWwDFX34H5BlK1ZNXadWuj9TWXhs19xdeHh2r+W7yhTeU1ubGIUpAm+0DoqE4E 6Ldm5Ga2d8hqcHi7FnvTzYhkjbH5qPcjeQWMofyQl6aTkkxkXSqGddOoTGjkHRpAKncPfT+KCId f2C0CYzOb8Qj X-Received: by 2002:a2e:9a0a:0:b0:399:77c3:dae with SMTP id 38308e7fff4ca-39acb6a0f2cmr7259691fa.17.1782397876707; Thu, 25 Jun 2026 07:31:16 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Nisha Moond Date: Thu, 25 Jun 2026 20:01:02 +0530 X-Gm-Features: AVVi8Cf3j92S_QFGl1i6TzKABtZTL9Jo3ZHLwdO1DojAqoCMOm9ZzXU-CxSgFa8 Message-ID: Subject: Re: Proposal: Conflict log history table for Logical Replication To: Dilip Kumar Cc: vignesh C , Amit Kapila , shveta malik , Peter Smith , Masahiko Sawada , Bharath Rupireddy , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="0000000000004a4d6b065514d85a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000004a4d6b065514d85a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 24, 2026 at 7:26=E2=80=AFPM Dilip Kumar = wrote: > > Please find the updated patch set attached. Hi Dilip, I ran a code coverage report on v56-0001 and v56-0002 and found a few cases not covered by existing tests. I added tests for the following: 1) check_publication_add_relation() =E2=80=93 verify that adding a conflict table to a publication errors out 2) execMain.c: CheckValidRowMarkRel() =E2=80=93 verify row locking on CLT i= s rejected for commands like SELECT ... FOR UPDATE 3) The test scenario shared by Shveta at [1] Please consider the patch if you are okay with it. The patch applies cleanly on top of latest v58-0002 patch, [1] https://www.postgresql.org/message-id/CAJpy0uC5x%2BZ%3Dfvurvz%3DK8EYQSC= Q1SCouR2LqiHS27Hp_Tzi6qw%40mail.gmail.com -- Thanks, Nisha --0000000000004a4d6b065514d85a Content-Type: text/plain; charset="US-ASCII"; name="v56_nisha-0001-Extend-test-coverage-for-missing-scenarios.txt" Content-Disposition: attachment; filename="v56_nisha-0001-Extend-test-coverage-for-missing-scenarios.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqtljywy0 RnJvbSAxNWNlYTI2NjgxMDEyNmNhMzA0Mzc3NWQ0NjkwYzMxNmQ1NGQ5OGE2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOaXNoYSBNb29uZCA8bmlzaGEubW9vbmQ0MTJAZ21haWwuY29t PgpEYXRlOiBUaHUsIDI1IEp1biAyMDI2IDE5OjM4OjQwICswNTMwClN1YmplY3Q6IFtQQVRDSCB2 NTZfbmlzaGFdIEV4dGVuZCB0ZXN0IGNvdmVyYWdlIGZvciBtaXNzaW5nIHNjZW5hcmlvcwoKLS0t CiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQgfCAzNCArKysrKysr KysrKysrKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNjcmlwdGlvbi5zcWwgICAgICB8 IDM0ICsrKysrKysrKysrKysrKysrKwogc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM1X2NvbmZs aWN0cy5wbCAgIHwgNDEgKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAx MDkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv c3Vic2NyaXB0aW9uLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9u Lm91dAppbmRleCBlMjBjY2QzNjViZi4uZmRhMzUyOTNjYmQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQKQEAgLTExMzYsNiArMTEzNiw0MCBAQCBFWENFUFRJ T04gV0hFTiBpbnN1ZmZpY2llbnRfcHJpdmlsZWdlIFRIRU4KICAgICAgICAgcmVnZXhwX3JlcGxh Y2UoZXJyX2RldGFpbCwgJ3BnX2NvbmZsaWN0X2xvZ19cZCsnLCAncGdfY29uZmxpY3RfbG9nX3h4 eCcpOwogRU5EICQkOwogTk9USUNFOiAgQ3JlYXRlIGluZGV4IGVycm9yOiBwZXJtaXNzaW9uIGRl bmllZDogInBnX2NvbmZsaWN0X2xvZ194eHgiIGlzIGEgY29uZmxpY3QgbG9nIHRhYmxlLCBkZXRh aWw6IENvbmZsaWN0IGxvZyB0YWJsZXMgYXJlIHN5c3RlbS1tYW5hZ2VkIHRhYmxlcyBmb3IgbG9n aWNhbCByZXBsaWNhdGlvbiBjb25mbGljdHMuCistLSBmYWlsIC0gY29uZmxpY3QgbG9nIHRhYmxl IGNhbm5vdCBiZSBhZGRlZCB0byBhIHB1YmxpY2F0aW9uCitETyAkJAorREVDTEFSRQorICAgIHRh Yl9uYW1lIHRleHQ7CisgICAgZXJyX21zZyB0ZXh0OworICAgIGVycl9kZXRhaWwgdGV4dDsKK0JF R0lOCisgICAgU0VMRUNUICdwZ19jb25mbGljdC4nIHx8IHJlbG5hbWUgSU5UTyB0YWJfbmFtZQor ICAgIEZST00gcGdfY2xhc3MgYyBKT0lOIHBnX3N1YnNjcmlwdGlvbiBzIE9OIGMucmVsbmFtZSA9 ICdwZ19jb25mbGljdF9sb2dfJyB8fCBzLm9pZAorICAgIFdIRVJFIHMuc3VibmFtZSA9ICdyZWdy ZXNzX2NvbmZsaWN0X3Byb3RlY3Rpb25fdGVzdCc7CisgICAgRVhFQ1VURSAnQ1JFQVRFIFBVQkxJ Q0FUSU9OIHRlc3RwdWJfZm9yX2NsdCBGT1IgVEFCTEUgJyB8fCB0YWJfbmFtZTsKK0VYQ0VQVElP TiBXSEVOIGludmFsaWRfcGFyYW1ldGVyX3ZhbHVlIFRIRU4KKyAgICBHRVQgU1RBQ0tFRCBESUFH Tk9TVElDUyBlcnJfbXNnID0gTUVTU0FHRV9URVhULCBlcnJfZGV0YWlsID0gUEdfRVhDRVBUSU9O X0RFVEFJTDsKKyAgICBSQUlTRSBOT1RJQ0UgJ1B1YmxpY2F0aW9uIGVycm9yOiAlLCBkZXRhaWw6 ICUnLAorICAgICAgICByZWdleHBfcmVwbGFjZShlcnJfbXNnLCAncGdfY29uZmxpY3RfbG9nX1xk KycsICdwZ19jb25mbGljdF9sb2dfeHh4JyksCisgICAgICAgIGVycl9kZXRhaWw7CitFTkQgJCQ7 CitOT1RJQ0U6ICBQdWJsaWNhdGlvbiBlcnJvcjogY2Fubm90IGFkZCByZWxhdGlvbiAicGdfY29u ZmxpY3RfbG9nX3h4eCIgdG8gcHVibGljYXRpb24sIGRldGFpbDogVGhpcyBvcGVyYXRpb24gaXMg bm90IHN1cHBvcnRlZCBmb3IgY29uZmxpY3QgbG9nIHRhYmxlcy4KKy0tIGZhaWwgLSBjYW5ub3Qg bG9jayByb3dzIGluIGNvbmZsaWN0IGxvZyB0YWJsZQorRE8gJCQKK0RFQ0xBUkUKKyAgICB0YWJf bmFtZSB0ZXh0OworICAgIGVycl9tc2cgdGV4dDsKK0JFR0lOCisgICAgU0VMRUNUICdwZ19jb25m bGljdC4nIHx8IHJlbG5hbWUgSU5UTyB0YWJfbmFtZQorICAgIEZST00gcGdfY2xhc3MgYyBKT0lO IHBnX3N1YnNjcmlwdGlvbiBzIE9OIGMucmVsbmFtZSA9ICdwZ19jb25mbGljdF9sb2dfJyB8fCBz Lm9pZAorICAgIFdIRVJFIHMuc3VibmFtZSA9ICdyZWdyZXNzX2NvbmZsaWN0X3Byb3RlY3Rpb25f dGVzdCc7CisgICAgRVhFQ1VURSAnU0VMRUNUIDEgRlJPTSAnIHx8IHRhYl9uYW1lIHx8ICcgRk9S IFVQREFURSc7CitFWENFUFRJT04gV0hFTiB3cm9uZ19vYmplY3RfdHlwZSBUSEVOCisgICAgR0VU IFNUQUNLRUQgRElBR05PU1RJQ1MgZXJyX21zZyA9IE1FU1NBR0VfVEVYVDsKKyAgICBSQUlTRSBO T1RJQ0UgJ1JvdyBsb2NrIGVycm9yOiAlJywKKyAgICAgICAgcmVnZXhwX3JlcGxhY2UoZXJyX21z ZywgJ3BnX2NvbmZsaWN0X2xvZ19cZCsnLCAncGdfY29uZmxpY3RfbG9nX3h4eCcpOworRU5EICQk OworTk9USUNFOiAgUm93IGxvY2sgZXJyb3I6IGNhbm5vdCBsb2NrIHJvd3MgaW4gdGhlIGNvbmZs aWN0IGxvZyB0YWJsZSAicGdfY29uZmxpY3RfbG9nX3h4eCIKIC0tIENsZWFuIHVwIHRyaWdnZXIg ZnVuY3Rpb24KIERST1AgRlVOQ1RJT04gcHVibGljLmR1bW15X3RyaWdnZXJfZnVuYygpOwogU0VU IGNsaWVudF9taW5fbWVzc2FnZXMgPSBXQVJOSU5HOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNjcmlw dGlvbi5zcWwKaW5kZXggYzU1N2E3NDk3N2UuLmY3Mjg2OWJiYmQxIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9yZWdyZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL3N1YnNjcmlwdGlvbi5zcWwKQEAgLTkzNCw2ICs5MzQsNDAgQEAgRVhDRVBUSU9OIFdIRU4g aW5zdWZmaWNpZW50X3ByaXZpbGVnZSBUSEVOCiAgICAgICAgIHJlZ2V4cF9yZXBsYWNlKGVycl9k ZXRhaWwsICdwZ19jb25mbGljdF9sb2dfXGQrJywgJ3BnX2NvbmZsaWN0X2xvZ194eHgnKTsKIEVO RCAkJDsKIAorLS0gZmFpbCAtIGNvbmZsaWN0IGxvZyB0YWJsZSBjYW5ub3QgYmUgYWRkZWQgdG8g YSBwdWJsaWNhdGlvbgorRE8gJCQKK0RFQ0xBUkUKKyAgICB0YWJfbmFtZSB0ZXh0OworICAgIGVy cl9tc2cgdGV4dDsKKyAgICBlcnJfZGV0YWlsIHRleHQ7CitCRUdJTgorICAgIFNFTEVDVCAncGdf Y29uZmxpY3QuJyB8fCByZWxuYW1lIElOVE8gdGFiX25hbWUKKyAgICBGUk9NIHBnX2NsYXNzIGMg Sk9JTiBwZ19zdWJzY3JpcHRpb24gcyBPTiBjLnJlbG5hbWUgPSAncGdfY29uZmxpY3RfbG9nXycg fHwgcy5vaWQKKyAgICBXSEVSRSBzLnN1Ym5hbWUgPSAncmVncmVzc19jb25mbGljdF9wcm90ZWN0 aW9uX3Rlc3QnOworICAgIEVYRUNVVEUgJ0NSRUFURSBQVUJMSUNBVElPTiB0ZXN0cHViX2Zvcl9j bHQgRk9SIFRBQkxFICcgfHwgdGFiX25hbWU7CitFWENFUFRJT04gV0hFTiBpbnZhbGlkX3BhcmFt ZXRlcl92YWx1ZSBUSEVOCisgICAgR0VUIFNUQUNLRUQgRElBR05PU1RJQ1MgZXJyX21zZyA9IE1F U1NBR0VfVEVYVCwgZXJyX2RldGFpbCA9IFBHX0VYQ0VQVElPTl9ERVRBSUw7CisgICAgUkFJU0Ug Tk9USUNFICdQdWJsaWNhdGlvbiBlcnJvcjogJSwgZGV0YWlsOiAlJywKKyAgICAgICAgcmVnZXhw X3JlcGxhY2UoZXJyX21zZywgJ3BnX2NvbmZsaWN0X2xvZ19cZCsnLCAncGdfY29uZmxpY3RfbG9n X3h4eCcpLAorICAgICAgICBlcnJfZGV0YWlsOworRU5EICQkOworCistLSBmYWlsIC0gY2Fubm90 IGxvY2sgcm93cyBpbiBjb25mbGljdCBsb2cgdGFibGUKK0RPICQkCitERUNMQVJFCisgICAgdGFi X25hbWUgdGV4dDsKKyAgICBlcnJfbXNnIHRleHQ7CitCRUdJTgorICAgIFNFTEVDVCAncGdfY29u ZmxpY3QuJyB8fCByZWxuYW1lIElOVE8gdGFiX25hbWUKKyAgICBGUk9NIHBnX2NsYXNzIGMgSk9J TiBwZ19zdWJzY3JpcHRpb24gcyBPTiBjLnJlbG5hbWUgPSAncGdfY29uZmxpY3RfbG9nXycgfHwg cy5vaWQKKyAgICBXSEVSRSBzLnN1Ym5hbWUgPSAncmVncmVzc19jb25mbGljdF9wcm90ZWN0aW9u X3Rlc3QnOworICAgIEVYRUNVVEUgJ1NFTEVDVCAxIEZST00gJyB8fCB0YWJfbmFtZSB8fCAnIEZP UiBVUERBVEUnOworRVhDRVBUSU9OIFdIRU4gd3Jvbmdfb2JqZWN0X3R5cGUgVEhFTgorICAgIEdF VCBTVEFDS0VEIERJQUdOT1NUSUNTIGVycl9tc2cgPSBNRVNTQUdFX1RFWFQ7CisgICAgUkFJU0Ug Tk9USUNFICdSb3cgbG9jayBlcnJvcjogJScsCisgICAgICAgIHJlZ2V4cF9yZXBsYWNlKGVycl9t c2csICdwZ19jb25mbGljdF9sb2dfXGQrJywgJ3BnX2NvbmZsaWN0X2xvZ194eHgnKTsKK0VORCAk JDsKKwogLS0gQ2xlYW4gdXAgdHJpZ2dlciBmdW5jdGlvbgogRFJPUCBGVU5DVElPTiBwdWJsaWMu ZHVtbXlfdHJpZ2dlcl9mdW5jKCk7CiAKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3N1YnNjcmlwdGlv bi90LzAzNV9jb25mbGljdHMucGwgYi9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMzVfY29uZmxp Y3RzLnBsCmluZGV4IGYyM2ZlNmFmMmE1Li5jZjdjNWZmMmU5YyAxMDA2NDQKLS0tIGEvc3JjL3Rl c3Qvc3Vic2NyaXB0aW9uL3QvMDM1X2NvbmZsaWN0cy5wbAorKysgYi9zcmMvdGVzdC9zdWJzY3Jp cHRpb24vdC8wMzVfY29uZmxpY3RzLnBsCkBAIC02NzAsNCArNjcwLDQ1IEBAIG9rKCAkbm9kZV9B LT5wb2xsX3F1ZXJ5X3VudGlsKAogCSksCiAJInRoZSBzbG90ICdwZ19jb25mbGljdF9kZXRlY3Rp b24nIGhhcyBiZWVuIGRyb3BwZWQgb24gTm9kZSBBIik7CiAKKyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKKyMgVmVyaWZ5IHRoYXQgQVRTaW1wbGVQZXJtaXNzaW9ucyBibG9ja3MgbW92aW5nIGEgQ0xU IHZpYQorIyBBTFRFUiBUQUJMRSBBTEwgSU4gVEFCTEVTUEFDRS4gIFdlIHVzZSBhbiBpc29sYXRl ZCBkYXRhYmFzZSBjb250YWluaW5nIG9ubHkKKyMgdGhlIENMVCBzbyBubyBvdGhlciB0YWJsZXMg YXJlIG1vdmVkIGJlZm9yZSB0aGUgZXJyb3IgZmlyZXMuCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj CisKKyMgQ3JlYXRlIGFuIGlzb2xhdGVkIGRhdGFiYXNlIHdpdGggYSBzaW5nbGUgQ0xUIGFuZCBu byB1c2VyIHRhYmxlcy4KKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAi Q1JFQVRFIERBVEFCQVNFIGNsdF90c190ZXN0Iik7Ciskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3Bz cWwoJ2NsdF90c190ZXN0JywKKwkiQ1JFQVRFIFNVQlNDUklQVElPTiBzdWJfdHNfdGVzdAorCSAg ICAgQ09OTkVDVElPTiAnZGJuYW1lPW5vbmV4aXN0ZW50JworCSAgICAgUFVCTElDQVRJT04gcHVi CisJICAgICBXSVRIIChjb25uZWN0PWZhbHNlLCBjb25mbGljdF9sb2dfZGVzdGluYXRpb249J3Rh YmxlJykiKTsKKworIyBDcmVhdGUgYSB0YWJsZXNwYWNlIGJhY2tlZCBieSBhIGRpcmVjdG9yeSBp bnNpZGUgdGhlIGRhdGEgZGlyLgorbXkgJHRzX2RpciA9ICRub2RlX3N1YnNjcmliZXItPmRhdGFf ZGlyIC4gJy9iYWNrdXBfc3BhY2UnOworbWtkaXIoJHRzX2RpcikKKyAgb3IgZGllICJjb3VsZCBu b3QgY3JlYXRlIHRhYmxlc3BhY2UgZGlyZWN0b3J5ICR0c19kaXI6ICQhIjsKKyRub2RlX3N1YnNj cmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgVEFCTEVTUEFDRSBiYWNrdXBf c3BhY2UgTE9DQVRJT04gJyR0c19kaXInIik7CisKKyMgVGhlIENMVCBpcyB0aGUgb25seSBub24t c3lzdGVtIHRhYmxlIGluIHBnX2RlZmF1bHQgb2YgY2x0X3RzX3Rlc3QsIHNvCisjIEFMVEVSIFRB QkxFIEFMTCBJTiBUQUJMRVNQQUNFIGhpdHMgaXQgaW1tZWRpYXRlbHkgYW5kIEFUU2ltcGxlUGVy bWlzc2lvbnMKKyMgcmFpc2VzIHRoZSBleHBlY3RlZCBlcnJvci4KKyh1bmRlZiwgdW5kZWYsICRz dGRlcnIpID0gJG5vZGVfc3Vic2NyaWJlci0+cHNxbCgnY2x0X3RzX3Rlc3QnLAorCSJBTFRFUiBU QUJMRSBBTEwgSU4gVEFCTEVTUEFDRSBwZ19kZWZhdWx0IFNFVCBUQUJMRVNQQUNFIGJhY2t1cF9z cGFjZSIpOworbGlrZSgKKwkkc3RkZXJyLAorCXFyL3Blcm1pc3Npb24gZGVuaWVkOiAicGdfY29u ZmxpY3RfbG9nX1xkKyIgaXMgYSBjb25mbGljdCBsb2cgdGFibGUvLAorCSJBVFNpbXBsZVBlcm1p c3Npb25zIGJsb2NrcyBtb3ZpbmcgQ0xUIHZpYSBBTFRFUiBUQUJMRSBBTEwgSU4gVEFCTEVTUEFD RSIpOworCisjIENsZWFudXAKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgnY2x0X3RzX3Rl c3QnLAorCSJBTFRFUiBTVUJTQ1JJUFRJT04gc3ViX3RzX3Rlc3QgRElTQUJMRSIpOworJG5vZGVf c3Vic2NyaWJlci0+c2FmZV9wc3FsKCdjbHRfdHNfdGVzdCcsCisJIkFMVEVSIFNVQlNDUklQVElP TiBzdWJfdHNfdGVzdCBTRVQgKHNsb3RfbmFtZSA9IE5PTkUpIik7Ciskbm9kZV9zdWJzY3JpYmVy LT5zYWZlX3BzcWwoJ2NsdF90c190ZXN0JywKKwkiRFJPUCBTVUJTQ1JJUFRJT04gc3ViX3RzX3Rl c3QiKTsKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiRFJPUCBEQVRB QkFTRSBjbHRfdHNfdGVzdCIpOworJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jl cycsICJEUk9QIFRBQkxFU1BBQ0UgYmFja3VwX3NwYWNlIik7CisKIGRvbmVfdGVzdGluZygpOwot LSAKMi41MC4xIChBcHBsZSBHaXQtMTU1KQoK --0000000000004a4d6b065514d85a--