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 1wK4Jv-000XzY-0x for pgsql-hackers@arkaria.postgresql.org; Tue, 05 May 2026 01:11:31 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wK4Jr-009RVV-2u for pgsql-hackers@arkaria.postgresql.org; Tue, 05 May 2026 01:11:27 +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 1wK4Jr-009RVM-1Y for pgsql-hackers@lists.postgresql.org; Tue, 05 May 2026 01:11:27 +0000 Received: from mail-ua1-x934.google.com ([2607:f8b0:4864:20::934]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wK4Jp-00000000XcF-1G8k for pgsql-hackers@lists.postgresql.org; Tue, 05 May 2026 01:11:27 +0000 Received: by mail-ua1-x934.google.com with SMTP id a1e0cc1a2514c-948029fb1f2so1408340241.0 for ; Mon, 04 May 2026 18:11:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777943483; cv=none; d=google.com; s=arc-20240605; b=CricRCkpp2YEWeuyn3UEk744OOoqVIhEbVO5DR9BpV5sUi3r+8ClqGCKZmRWwX1q7s 7WwjwwiWwI8L03+02SaDvjTkzlg8qeRTIYFXU8d/pyTK/C5nMBu3Wzoai5jXGqd/0gbu UjYqlDrOo3giV0XXDwT0YWOTQy9WiV1hZtJT7TgBRCR/wOxPGSr5P2NE+QIl0G5RiEvO gbZoQbVnQPr+XqCAPH3Y3coHskdhBXYGlbrFEeTUZVPlaGJkHy0M1q9ZJOfecfJF26VX UOJv/upLJbSN8m9y6BWUSJu4nHMpb8nmdkZ9fKkjoFPtF9VHVH/e3mKgGb0ObubEHXlZ LXfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=ZXY7WUNQne7N/hRkGpwh+MLfusbzAevJUfwvWVkaVdw=; fh=dxJXJbLzq9Nah1LUdsj4QTuQ3JoDScd0wp1YHY64NXM=; b=isi4y09gn1seXR2K8HHfbbBqqWXrGsSOD56puyn5aNsx95y+7lyuH0PutyXWAEHEL6 fYPbTP0QzJ8kO4ZtesTtRUS6mYojs837kIbQr7VTBaGadFTti5e4e5uvbwcvOApt09+/ f3r3FwexFNIcuKPeStTg0Htdw0Fs6yEF5ZR3+NLp+chVe5/g1fGtHD9CZu2tcMKgl0tx ErZBCOaYGBWxC6wlnpuScEE3pZ0DAgwAAA88OdTP+n41CUCizHWLc9uKHKQCcVZq5cVQ sqBJkOc85O/w/ySCc0H5Gc6fdoaELi9bb4/tNqEvEB++AL7MQ8tKjL0HiA4mi1vjl1Yo PbvA==; 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=1777943483; x=1778548283; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=ZXY7WUNQne7N/hRkGpwh+MLfusbzAevJUfwvWVkaVdw=; b=cEvhGCb3z6lv7Bn36f19I2AUrO7vr0DAszwAUI/D/6ZFJHL1LM05birvFJ4sFD84PC 5zEFA0kE5Ukdi349BnEoQfbtJPoOWKaAlt/8fB6CVUt5AjywowkSQSK7fj4ih1RnDej3 jXPDVkz9XkwxEUk49gIKMINDhrXfgLjJwLnIimqtAvWli8L3PMo/Rw+us78U+kY4q3WY fA/K6+QHpi0/7eUzzBv4DxyoYY72OCd9iQduOl7uy2d6xSOR/0rvBUCNeaOITnri7OGv hwjGmaer0G19mwsbTHQUDt6oBHmqFl0j7EM0M1oIo3Y/m1a7bmhD3yeYy+/E9yYN1yVB 8GrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777943483; x=1778548283; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ZXY7WUNQne7N/hRkGpwh+MLfusbzAevJUfwvWVkaVdw=; b=hshdgSuZbpekNTKR73nIflq9wD0OxT78VrmAOpt1IIPkgStdXiNhP++ZRcjOQsYE2H N0LpPv+IQaUDF2FFzaAQXcoCn3lNX9n0kvQ6gSB0f87VxNusv0D/plRl0rtzh/pa4TZA yEdr5A340P+WlX9cDqcx7Gk5f3EGI7tSPHN0CJwiF0HCobui8KXTArAX7QYsmTH/b+2h KL/LJT1/ZCcv0z2A5/3QwCB76n6nO7Vhqd2VpojHl3rt9FagEx4R+XCRhavDIErWDpew Vm+PZj9OJRURK/3IUqrRVMukHisimDoXQQNw3z69WLhIYPm38VV84sZZ3L/nusf9pCX3 GmWA== X-Gm-Message-State: AOJu0YxkbQ3X12rSrRUkbr2wR2JEG0oFyIIX5TCR/LYDkLaB/dzmHmks Oti5cPuiZz5JXF1iU9Q+lHx6YSdXew/xQC/6ENzP3GdojGZN+RoeGjIWV+dP358ohGNaBMUFOLl zNRLH5FUmRMw2sqKgTb2JQynLfw4Z0gtuxW1P X-Gm-Gg: AeBDiesQD6ZgecC180cwN2ztceefl3FJrtHK8CEua7EYnRxXx2/ABdw6QE+Yo6RhuuR sAZkVl3MNnBg5VdmnNWWulTTZ26z/+9rBoU39Z+2qnsQRV8q+4ziHzwRpZcWOWxppVvvTJ7qJrz 6A+MLFfBW/uv2MBGXUZ6HIoIysNaDxLvmDGlqD0BXFNTy4O2mXSMiEbJ+yO+gHd3E5MQmNPQ840 ZovZ0svdHTD+Uwbdov3ElHEtJIVLdMMSTvIh3luBV5BxpIKdEJOTwkFBiWPn47z06EgoWfMkhSj CVI45b2le+8YRD+m4g== X-Received: by 2002:a05:6102:809e:b0:613:86e6:b2d with SMTP id ada2fe7eead31-62d87259840mr4936442137.21.1777943482895; Mon, 04 May 2026 18:11:22 -0700 (PDT) MIME-Version: 1.0 From: SATYANARAYANA NARLAPURAM Date: Mon, 4 May 2026 18:11:11 -0700 X-Gm-Features: AVHnY4LHQTiDIxu8yBf7FZiap4G-JMg8Gm2tLv3OR5WHjvX9qbkVf5hPpKT1j-s Message-ID: Subject: [Patch] Omit virtual generated columns from test_decoding output To: PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000badbe2065107b90c" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000badbe2065107b90c Content-Type: multipart/alternative; boundary="000000000000badbe2065107b90a" --000000000000badbe2065107b90a Content-Type: text/plain; charset="UTF-8" Hi Hackers, Virtual generated columns are not stored on disk, so heap_getattr() in tuple_to_stringinfo() always returned NULL for them, producing misleading output such as table public.t: INSERT: a[integer]:1 b[integer]:10 c[integer]:null even though the user could observe a non-null value via SELECT. Stored generated columns continue to be emitted as before because their values do live in the heap tuple. This matches the pgoutput's logicalrep_should_publish_column() which never publishes virtual generated columns. Added a regression test. Please find the patch attached. Thanks, Satya --000000000000badbe2065107b90a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,

Virtual generated colum= ns are not stored on disk, so heap_getattr() in
tuple_to_stringinfo() al= ways returned NULL for them, producing
misleading output such as

= =C2=A0 table public.t: INSERT: a[integer]:1 b[integer]:10 c[integer]:null
even though the user could observe a non-null value via SELECT.=C2=A0= Stored
generated columns continue to be emitted as before because their= values
do live in the heap tuple.

This matches the pgoutput'= s logicalrep_should_publish_column()
which never publishes virtual gener= ated columns. Added a regression test.
Please find the patch atta= ched.

Thanks,
Satya
--000000000000badbe2065107b90a-- --000000000000badbe2065107b90c Content-Type: application/octet-stream; name="0001-Omit-virtual-generated-columns-from-test_decoding-ou.patch" Content-Disposition: attachment; filename="0001-Omit-virtual-generated-columns-from-test_decoding-ou.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_morxmttp0 RnJvbSBmZDIyNzUyNmZlN2VhNmY3NjYxMjA0NTFmYWQwZjYzNGI2YjE3ZTc4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCdWcgSHVudCA8YnVnLWh1bnRAZXhhbXBsZS5jb20+CkRhdGU6 IFR1ZSwgNSBNYXkgMjAyNiAwMDo1MTowMyArMDAwMApTdWJqZWN0OiBbUEFUQ0hdIE9taXQgdmly dHVhbCBnZW5lcmF0ZWQgY29sdW1ucyBmcm9tIHRlc3RfZGVjb2Rpbmcgb3V0cHV0CgpWaXJ0dWFs IGdlbmVyYXRlZCBjb2x1bW5zIGFyZSBub3Qgc3RvcmVkIG9uIGRpc2ssIHNvIGhlYXBfZ2V0YXR0 cigpIGluCnR1cGxlX3RvX3N0cmluZ2luZm8oKSBhbHdheXMgcmV0dXJuZWQgTlVMTCBmb3IgdGhl bSwgcHJvZHVjaW5nCm1pc2xlYWRpbmcgb3V0cHV0IHN1Y2ggYXMKCiAgdGFibGUgcHVibGljLnQ6 IElOU0VSVDogYVtpbnRlZ2VyXToxIGJbaW50ZWdlcl06MTAgY1tpbnRlZ2VyXTpudWxsCgpldmVu IHRob3VnaCB0aGUgdXNlciBjb3VsZCBvYnNlcnZlIGEgbm9uLW51bGwgdmFsdWUgdmlhIFNFTEVD VC4gIFN0b3JlZApnZW5lcmF0ZWQgY29sdW1ucyBjb250aW51ZSB0byBiZSBlbWl0dGVkIGFzIGJl Zm9yZSBiZWNhdXNlIHRoZWlyIHZhbHVlcwpkbyBsaXZlIGluIHRoZSBoZWFwIHR1cGxlLgoKVGhp cyBtYXRjaGVzIHRoZSBwb2xpY3kgaW4gcGdvdXRwdXQncyBsb2dpY2FscmVwX3Nob3VsZF9wdWJs aXNoX2NvbHVtbigpCndoaWNoIG5ldmVyIHB1Ymxpc2hlcyB2aXJ0dWFsIGdlbmVyYXRlZCBjb2x1 bW5zLgoKQWxzbyBhZGQgYSByZWdyZXNzaW9uIHRlc3QgKHNxbC9nZW5lcmF0ZWQuc3FsLApleHBl Y3RlZC9nZW5lcmF0ZWQub3V0KS4KLS0tCiBjb250cmliL3Rlc3RfZGVjb2RpbmcvTWFrZWZpbGUg ICAgICAgICAgICAgICB8ICAzICstCiBjb250cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvZ2Vu ZXJhdGVkLm91dCB8IDYzICsrKysrKysrKysrKysrKysrKysrCiBjb250cmliL3Rlc3RfZGVjb2Rp bmcvbWVzb24uYnVpbGQgICAgICAgICAgICB8ICAxICsKIGNvbnRyaWIvdGVzdF9kZWNvZGluZy9z cWwvZ2VuZXJhdGVkLnNxbCAgICAgIHwgMzkgKysrKysrKysrKysrCiBjb250cmliL3Rlc3RfZGVj b2RpbmcvdGVzdF9kZWNvZGluZy5jICAgICAgICB8IDExICsrKysKIDUgZmlsZXMgY2hhbmdlZCwg MTE2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBjb250 cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvZ2VuZXJhdGVkLm91dAogY3JlYXRlIG1vZGUgMTAw NjQ0IGNvbnRyaWIvdGVzdF9kZWNvZGluZy9zcWwvZ2VuZXJhdGVkLnNxbAoKZGlmZiAtLWdpdCBh L2NvbnRyaWIvdGVzdF9kZWNvZGluZy9NYWtlZmlsZSBiL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9N YWtlZmlsZQppbmRleCAwMTExMTI0My4uNmQwNTA3NjUgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvdGVz dF9kZWNvZGluZy9NYWtlZmlsZQorKysgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvTWFrZWZpbGUK QEAgLTUsNyArNSw4IEBAIFBHRklMRURFU0MgPSAidGVzdF9kZWNvZGluZyAtIGV4YW1wbGUgb2Yg YSBsb2dpY2FsIGRlY29kaW5nIG91dHB1dCBwbHVnaW4iCiAKIFJFR1JFU1MgPSBkZGwgeGFjdCBy ZXdyaXRlIHRvYXN0IHBlcm1pc3Npb25zIGRlY29kaW5nX2luX3hhY3QgXAogCWRlY29kaW5nX2lu dG9fcmVsIGJpbmFyeSBwcmVwYXJlZCByZXBsb3JpZ2luIHRpbWUgbWVzc2FnZXMgXAotCXJlcGFj ayBzcGlsbCBzbG90IHRydW5jYXRlIHN0cmVhbSBzdGF0cyB0d29waGFzZSB0d29waGFzZV9zdHJl YW0KKwlyZXBhY2sgc3BpbGwgc2xvdCB0cnVuY2F0ZSBzdHJlYW0gc3RhdHMgdHdvcGhhc2UgdHdv cGhhc2Vfc3RyZWFtIFwKKwlnZW5lcmF0ZWQKIElTT0xBVElPTiA9IG14YWN0IGRlbGF5ZWRfc3Rh cnR1cCBvbmRpc2tfc3RhcnR1cCBjb25jdXJyZW50X2RkbF9kbWwgXAogCW9sZGVzdF94bWluIHNu YXBzaG90X3RyYW5zZmVyIHN1YnhhY3Rfd2l0aG91dF90b3AgY29uY3VycmVudF9zdHJlYW0gXAog CXR3b3BoYXNlX3NuYXBzaG90IHNsb3RfY3JlYXRpb25fZXJyb3IgY2F0YWxvZ19jaGFuZ2Vfc25h cHNob3QgXApkaWZmIC0tZ2l0IGEvY29udHJpYi90ZXN0X2RlY29kaW5nL2V4cGVjdGVkL2dlbmVy YXRlZC5vdXQgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvZ2VuZXJhdGVkLm91dApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4uNWFlZGI2YjkKLS0tIC9kZXYvbnVs bAorKysgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvZ2VuZXJhdGVkLm91dApAQCAt MCwwICsxLDYzIEBACistLSBwcmVkaWN0YWJpbGl0eQorU0VUIHN5bmNocm9ub3VzX2NvbW1pdCA9 IG9uOworU0VMRUNUICdpbml0JyBGUk9NIHBnX2NyZWF0ZV9sb2dpY2FsX3JlcGxpY2F0aW9uX3Ns b3QoJ3JlZ3Jlc3Npb25fc2xvdCcsICd0ZXN0X2RlY29kaW5nJyk7CisgP2NvbHVtbj8gCistLS0t LS0tLS0tCisgaW5pdAorKDEgcm93KQorCitDUkVBVEUgVEFCTEUgZ3Rlc3QxICgKKyAgICBhIGlu dCBQUklNQVJZIEtFWSwKKyAgICBiIGludCwKKyAgICBjIGludCBHRU5FUkFURUQgQUxXQVlTIEFT IChhICsgYikgVklSVFVBTCwKKyAgICBkIGludCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICogMikg U1RPUkVECispOworSU5TRVJUIElOVE8gZ3Rlc3QxIChhLCBiKSBWQUxVRVMgKDEsIDEwKSwgKDIs IDIwKTsKK1VQREFURSBndGVzdDEgU0VUIGIgPSA5OSBXSEVSRSBhID0gMTsKK0RFTEVURSBGUk9N IGd0ZXN0MSBXSEVSRSBhID0gMjsKKy0tIFZpcnR1YWwgZ2VuZXJhdGVkIGNvbHVtbiAiYyIgbXVz dCBiZSBvbWl0dGVkIChpdHMgdmFsdWUgaXMgbm90IHN0b3JlZCBvbgorLS0gZGlzayBzbyBoZWFw X2dldGF0dHIoKSB3b3VsZCBvdGhlcndpc2UgZW1pdCBhIG1pc2xlYWRpbmcgTlVMTCkuICBTdG9y ZWQKKy0tIGdlbmVyYXRlZCBjb2x1bW4gImQiIGlzIGVtaXR0ZWQgbm9ybWFsbHkgYmVjYXVzZSBp dHMgdmFsdWUgaXMgb24gZGlzay4KK1NFTEVDVCBkYXRhIEZST00gcGdfbG9naWNhbF9zbG90X2dl dF9jaGFuZ2VzKCdyZWdyZXNzaW9uX3Nsb3QnLCBOVUxMLCBOVUxMLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luY2x1ZGUteGlkcycsICcwJywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdza2lwLWVtcHR5LXhhY3Rz JywgJzEnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBCRUdJTgorIHRhYmxlIHB1 YmxpYy5ndGVzdDE6IElOU0VSVDogYVtpbnRlZ2VyXToxIGJbaW50ZWdlcl06MTAgZFtpbnRlZ2Vy XToyCisgdGFibGUgcHVibGljLmd0ZXN0MTogSU5TRVJUOiBhW2ludGVnZXJdOjIgYltpbnRlZ2Vy XToyMCBkW2ludGVnZXJdOjQKKyBDT01NSVQKKyBCRUdJTgorIHRhYmxlIHB1YmxpYy5ndGVzdDE6 IFVQREFURTogYVtpbnRlZ2VyXToxIGJbaW50ZWdlcl06OTkgZFtpbnRlZ2VyXToyCisgQ09NTUlU CisgQkVHSU4KKyB0YWJsZSBwdWJsaWMuZ3Rlc3QxOiBERUxFVEU6IGFbaW50ZWdlcl06MgorIENP TU1JVAorKDEwIHJvd3MpCisKKy0tIFRhYmxlIHdpdGggb25seSB2aXJ0dWFsIGdlbmVyYXRlZCBj b2x1bW5zIGFsb25nc2lkZSB0aGUga2V5CitDUkVBVEUgVEFCTEUgZ3Rlc3QyICgKKyAgICBhIGlu dCBQUklNQVJZIEtFWSwKKyAgICBiIGludCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICsgMSkgVklS VFVBTCwKKyAgICBjIHRleHQgR0VORVJBVEVEIEFMV0FZUyBBUyAoJ3Jvdy0nIHx8IGE6OnRleHQp IFZJUlRVQUwKKyk7CitJTlNFUlQgSU5UTyBndGVzdDIgKGEpIFZBTFVFUyAoMTApLCAoMjApOwor U0VMRUNUIGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2NoYW5nZXMoJ3JlZ3Jlc3Npb25f c2xvdCcsIE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAnaW5jbHVkZS14aWRzJywgJzAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJ3NraXAtZW1wdHkteGFjdHMnLCAnMScpOworICAgICAgICAgICAg ICAgICAgICBkYXRhICAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgQkVHSU4KKyB0YWJsZSBwdWJsaWMuZ3Rlc3QyOiBJTlNF UlQ6IGFbaW50ZWdlcl06MTAKKyB0YWJsZSBwdWJsaWMuZ3Rlc3QyOiBJTlNFUlQ6IGFbaW50ZWdl cl06MjAKKyBDT01NSVQKKyg0IHJvd3MpCisKK0RST1AgVEFCTEUgZ3Rlc3QxOworRFJPUCBUQUJM RSBndGVzdDI7CitTRUxFQ1QgJ3N0b3AnIEZST00gcGdfZHJvcF9yZXBsaWNhdGlvbl9zbG90KCdy ZWdyZXNzaW9uX3Nsb3QnKTsKKyA/Y29sdW1uPyAKKy0tLS0tLS0tLS0KKyBzdG9wCisoMSByb3cp CisKZGlmZiAtLWdpdCBhL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9tZXNvbi5idWlsZCBiL2NvbnRy aWIvdGVzdF9kZWNvZGluZy9tZXNvbi5idWlsZAppbmRleCBhYzY1NTg1My4uMjRkZTY1NDMgMTAw NjQ0Ci0tLSBhL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9tZXNvbi5idWlsZAorKysgYi9jb250cmli L3Rlc3RfZGVjb2RpbmcvbWVzb24uYnVpbGQKQEAgLTQyLDYgKzQyLDcgQEAgdGVzdHMgKz0gewog ICAgICAgJ3N0YXRzJywKICAgICAgICd0d29waGFzZScsCiAgICAgICAndHdvcGhhc2Vfc3RyZWFt JywKKyAgICAgICdnZW5lcmF0ZWQnLAogICAgIF0sCiAgICAgJ3JlZ3Jlc3NfYXJncyc6IFsKICAg ICAgICctLXRlbXAtY29uZmlnJywgZmlsZXMoJ2xvZ2ljYWwuY29uZicpLApkaWZmIC0tZ2l0IGEv Y29udHJpYi90ZXN0X2RlY29kaW5nL3NxbC9nZW5lcmF0ZWQuc3FsIGIvY29udHJpYi90ZXN0X2Rl Y29kaW5nL3NxbC9nZW5lcmF0ZWQuc3FsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwLi5jNTdlZTNhMQotLS0gL2Rldi9udWxsCisrKyBiL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9z cWwvZ2VuZXJhdGVkLnNxbApAQCAtMCwwICsxLDM5IEBACistLSBwcmVkaWN0YWJpbGl0eQorU0VU IHN5bmNocm9ub3VzX2NvbW1pdCA9IG9uOworCitTRUxFQ1QgJ2luaXQnIEZST00gcGdfY3JlYXRl X2xvZ2ljYWxfcmVwbGljYXRpb25fc2xvdCgncmVncmVzc2lvbl9zbG90JywgJ3Rlc3RfZGVjb2Rp bmcnKTsKKworQ1JFQVRFIFRBQkxFIGd0ZXN0MSAoCisgICAgYSBpbnQgUFJJTUFSWSBLRVksCisg ICAgYiBpbnQsCisgICAgYyBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSArIGIpIFZJUlRVQUws CisgICAgZCBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSAqIDIpIFNUT1JFRAorKTsKKworSU5T RVJUIElOVE8gZ3Rlc3QxIChhLCBiKSBWQUxVRVMgKDEsIDEwKSwgKDIsIDIwKTsKK1VQREFURSBn dGVzdDEgU0VUIGIgPSA5OSBXSEVSRSBhID0gMTsKK0RFTEVURSBGUk9NIGd0ZXN0MSBXSEVSRSBh ID0gMjsKKworLS0gVmlydHVhbCBnZW5lcmF0ZWQgY29sdW1uICJjIiBtdXN0IGJlIG9taXR0ZWQg KGl0cyB2YWx1ZSBpcyBub3Qgc3RvcmVkIG9uCistLSBkaXNrIHNvIGhlYXBfZ2V0YXR0cigpIHdv dWxkIG90aGVyd2lzZSBlbWl0IGEgbWlzbGVhZGluZyBOVUxMKS4gIFN0b3JlZAorLS0gZ2VuZXJh dGVkIGNvbHVtbiAiZCIgaXMgZW1pdHRlZCBub3JtYWxseSBiZWNhdXNlIGl0cyB2YWx1ZSBpcyBv biBkaXNrLgorU0VMRUNUIGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2NoYW5nZXMoJ3Jl Z3Jlc3Npb25fc2xvdCcsIE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnaW5jbHVkZS14aWRzJywgJzAnLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NraXAtZW1wdHkteGFjdHMnLCAnMScpOworCist LSBUYWJsZSB3aXRoIG9ubHkgdmlydHVhbCBnZW5lcmF0ZWQgY29sdW1ucyBhbG9uZ3NpZGUgdGhl IGtleQorQ1JFQVRFIFRBQkxFIGd0ZXN0MiAoCisgICAgYSBpbnQgUFJJTUFSWSBLRVksCisgICAg YiBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSArIDEpIFZJUlRVQUwsCisgICAgYyB0ZXh0IEdF TkVSQVRFRCBBTFdBWVMgQVMgKCdyb3ctJyB8fCBhOjp0ZXh0KSBWSVJUVUFMCispOworCitJTlNF UlQgSU5UTyBndGVzdDIgKGEpIFZBTFVFUyAoMTApLCAoMjApOworCitTRUxFQ1QgZGF0YSBGUk9N IHBnX2xvZ2ljYWxfc2xvdF9nZXRfY2hhbmdlcygncmVncmVzc2lvbl9zbG90JywgTlVMTCwgTlVM TCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbmNsdWRl LXhpZHMnLCAnMCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAnc2tpcC1lbXB0eS14YWN0cycsICcxJyk7CisKK0RST1AgVEFCTEUgZ3Rlc3QxOworRFJPUCBU QUJMRSBndGVzdDI7CitTRUxFQ1QgJ3N0b3AnIEZST00gcGdfZHJvcF9yZXBsaWNhdGlvbl9zbG90 KCdyZWdyZXNzaW9uX3Nsb3QnKTsKZGlmZiAtLWdpdCBhL2NvbnRyaWIvdGVzdF9kZWNvZGluZy90 ZXN0X2RlY29kaW5nLmMgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvdGVzdF9kZWNvZGluZy5jCmlu ZGV4IGQ1Y2YwZmEwLi44M2NlOWU3NSAxMDA2NDQKLS0tIGEvY29udHJpYi90ZXN0X2RlY29kaW5n L3Rlc3RfZGVjb2RpbmcuYworKysgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvdGVzdF9kZWNvZGlu Zy5jCkBAIC01NTQsNiArNTU0LDE3IEBAIHR1cGxlX3RvX3N0cmluZ2luZm8oU3RyaW5nSW5mbyBz LCBUdXBsZURlc2MgdHVwZGVzYywgSGVhcFR1cGxlIHR1cGxlLCBib29sIHNraXBfCiAJCWlmIChh dHRyLT5hdHRudW0gPCAwKQogCQkJY29udGludWU7CiAKKwkJLyoKKwkJICogRG9uJ3QgcHJpbnQg dmlydHVhbCBnZW5lcmF0ZWQgY29sdW1ucy4gIFRoZWlyIHZhbHVlcyBhcmUgbm90CisJCSAqIHN0 b3JlZCBpbiB0aGUgaGVhcCB0dXBsZSwgc28gaGVhcF9nZXRhdHRyKCkgd291bGQgYWx3YXlzIHJl dHVybgorCQkgKiBOVUxMLCB3aGljaCBpcyBtaXNsZWFkaW5nLiAgVGhpcyBtYXRjaGVzIHBnb3V0 cHV0J3MgcG9saWN5IG9mCisJCSAqIG5ldmVyIHB1Ymxpc2hpbmcgdmlydHVhbCBnZW5lcmF0ZWQg Y29sdW1ucyAoc2VlCisJCSAqIGxvZ2ljYWxyZXBfc2hvdWxkX3B1Ymxpc2hfY29sdW1uKCkpLiAg U3RvcmVkIGdlbmVyYXRlZCBjb2x1bW5zCisJCSAqIGFyZSBlbWl0dGVkIGFzIHVzdWFsIHNpbmNl IHRoZWlyIHZhbHVlcyBhcmUgYWN0dWFsbHkgb24gZGlzay4KKwkJICovCisJCWlmIChhdHRyLT5h dHRnZW5lcmF0ZWQgPT0gQVRUUklCVVRFX0dFTkVSQVRFRF9WSVJUVUFMKQorCQkJY29udGludWU7 CisKIAkJdHlwaWQgPSBhdHRyLT5hdHR0eXBpZDsKIAogCQkvKiBnZXQgRGF0dW0gZnJvbSB0dXBs ZSAqLwotLSAKMi40My4wCgo= --000000000000badbe2065107b90c--