Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pYkE2-0001c6-9W for pgsql-bugs@arkaria.postgresql.org; Sun, 05 Mar 2023 09:00:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pYkE1-0005KB-53 for pgsql-bugs@arkaria.postgresql.org; Sun, 05 Mar 2023 09:00:13 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pYkE0-0005K1-OW for pgsql-bugs@lists.postgresql.org; Sun, 05 Mar 2023 09:00:12 +0000 Received: from mail-lf1-x12f.google.com ([2a00:1450:4864:20::12f]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pYkDu-0001uL-0F for pgsql-bugs@lists.postgresql.org; Sun, 05 Mar 2023 09:00:12 +0000 Received: by mail-lf1-x12f.google.com with SMTP id m6so8910140lfq.5 for ; Sun, 05 Mar 2023 01:00:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678006803; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=EhWXVXsY5HG5tdAGL+hFpVbNdf7dfE7Cqyv6/AegHww=; b=EHQxkGhQ9/buBJ4gvZ7stnUlPgIZYubb/WaV3PRe+zWAoRvUD3z2f2jwZ0dsyr/uqo sLV9Bp6Klcb+vl/GHF5o/dtbNZbKUqQ0z5dLFS9IpOc6cj0e6pikpz7Mf2czP2MbHOXv HIwlKIti5s4MpLpoqpaJdKdz8MniUD+yn6ZqKsL4yxDXDXTazdRTCPibBG2v4Ipzw4uv PUWJBfYfzaQ90PDT+rXlIFK7ACKW9sP0sJhN68MGktUixIS80h9hphVczzJFJVGzdpIR e9mZHiQnp6hXRUst5Xjp6ENQxeqj6bfXYXPVPp1JjLToSXZeybo7yfJhrEbvtCJSPout sTXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678006803; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=EhWXVXsY5HG5tdAGL+hFpVbNdf7dfE7Cqyv6/AegHww=; b=rFCYz5/ZvXBs1A2CrABcBgx0VkWQ7Ik20VPquso8wpySIVsZaELyQMmj3+HctQynyT c7kvBdCrLSv2MHxU1uc13cX5b1mZ04717g7o/pMy8L5retagKeNmz221BSLt+AyN+GWw UWq/8TcCCPP5QjJpPDZFDRQS9HrMMJF2pkNQgRULQJ/xYUzZDXZ7ZXiqyO+2WOcCgwuO ff1VGIsyuTBIinn0XRPLVquehGhbuLisGxdoGqGdc5/BKRuzx+s4s/M7hxn1l3+XXnXa jegoKNs+6rbPlTiwfpcCn0UIxrRyZts8i/D5S+vkQM0qHbZPxk+ayl+gFSNH0wMpRdNG em9g== X-Gm-Message-State: AO0yUKXcpzxMexz0niuBJ+72xKcnGASHC2lzEM4K9t9Pqt/wNaHiOf4M GOyznmeAmaKOGMSSFINHkec= X-Google-Smtp-Source: AK7set/zEz8JdrkZ+kqewd8jAT556xLhJMOLxqCkzOFyHiaJohlg54lFFdzD5zXZcXG/09ngPBWWcw== X-Received: by 2002:ac2:5dd9:0:b0:4df:1d72:8e88 with SMTP id x25-20020ac25dd9000000b004df1d728e88mr2166122lfq.59.1678006803485; Sun, 05 Mar 2023 01:00:03 -0800 (PST) Received: from [1.0.0.7] ([178.155.5.178]) by smtp.gmail.com with ESMTPSA id j22-20020a2e3c16000000b00295a36fedadsm1167670lja.26.2023.03.05.01.00.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 05 Mar 2023 01:00:02 -0800 (PST) Content-Type: multipart/mixed; boundary="------------QiDBIYVnogGbIhG0VjxuabnX" Message-ID: <0ba7e4cc-6b81-aebe-b087-8f59c4248511@gmail.com> Date: Sun, 5 Mar 2023 12:00:01 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Subject: Re: BUG #17116: Assert failed in SerialSetActiveSerXmin() on commit of parallelized serializable transaction Content-Language: en-US To: Thomas Munro Cc: PostgreSQL mailing lists , heikki.linnakangas@iki.fi, Kevin Grittner References: <17116-d6ca217acc180e30@postgresql.org> <66a6851c-e213-b31a-c8e6-789ab06e17f1@gmail.com> <09825f99-97e3-daa1-3d84-05d7263da947@gmail.com> From: Alexander Lakhin In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------QiDBIYVnogGbIhG0VjxuabnX Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Thomas, 15.01.2022 08:41, Thomas Munro wrote: > On Mon, Jan 10, 2022 at 6:00 AM Alexander Lakhin wrote: >> As to v4-0001-Fix-assert-failures-in-parallel-SERIALIZABLE-READ.patch >> you posted before, I believe it fixes the issues as expected and may be >> committed at least to allow for advanced testing. > Cool, I'll do that in the next few days. Need to swap SERIALIZABLE > back into my neurons after some time away... I've caught one of asserts we discussed here again (in a different setup) and would like to continue working on the fixes. I've rechecked v4-0001-Fix-assert-failures-in-parallel-SERIALIZABLE-READ.patch — it's still in a good shape, needs only minor corrections for the master branch and can be applied as-is to REL_12_STABLE .. REL_15_STABLE. The modified test serializable-parallel-2 and new test serializable-parallel-3 still trigger asserts with unpatched predicate.c and make check-world passes with the complete patch applied. So if that patch requires attention of a seasoned reviewer, let's send it to the commitfest (I can register the patch if you don't mind)? Otherwise, maybe just commit it and move to other bugs... Best regards, Alexander --------------QiDBIYVnogGbIhG0VjxuabnX Content-Type: text/x-patch; charset=UTF-8; name="v4-0001-Fix-assert-failures-in-parallel-SERIALIZABLE-READ-master.patch" Content-Disposition: attachment; filename*0="v4-0001-Fix-assert-failures-in-parallel-SERIALIZABLE-READ-ma"; filename*1="ster.patch" Content-Transfer-Encoding: base64 RnJvbSBhM2YzNGE5ZGIyMGE0NTVlMGRiNDdhNTkzNmNlMTBkZDg2ZDZmNDc5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBUaG9tYXMgTXVucm8gPHRob21hcy5tdW5yb0BnbWFp bC5jb20+CkRhdGU6IE1vbiwgMjYgSnVsIDIwMjEgMTc6NTc6NDcgKzEyMDAKU3ViamVjdDog W1BBVENIIHY0IDEvMl0gRml4IGFzc2VydCBmYWlsdXJlcyBpbiBwYXJhbGxlbCBTRVJJQUxJ WkFCTEUgUkVBRAogT05MWS4KCjEuICBNYWtlIHN1cmUgdGhhdCB3ZSBkb24ndCBkZWNyZW1l bnQgU3hhY3RHbG9iYWxYbWluQ291bnQgdHdpY2Ugd2hlbgp0aGUgU1hBQ1RfRkxBR19ST19T QUZFIG9wdGltaXphdGlvbiBpcyByZWFjaGVkIGluIGEgcGFyYWxsZWwgcXVlcnkuClRoaXMg Y291bGQgdHJpZ2dlciBhIHNhbml0eSBjaGVjayBmYWlsdXJlIGluIGFzc2VydCBidWlsZHMu ICBSZWxlYXNlCmJ1aWxkcyByZWNvbXB1dGUgdGhlIGNvdW50IGluIFNldE5ld1N4YWN0R2xv YmFsWG1pbigpLCBoaWRpbmcgdGhlCnByb2JsZW0uICBBZGQgYSBuZXcgaXNvbGF0aW9uIHRl c3QgZm9yIHRoYXQgY2FzZS4KCjIuICBSZW1vdmUgYW4gYXNzZXJ0aW9uIHRoYXQgdGhlIERP T01FRCBmbGFnIGNhbid0IGJlIHNldCBvbiBhIHBhcnRpYWxseQpyZWxlYXNlZCBTRVJJQUxJ WkFCTEVYQUNULiAgSW5zdGVhZCwgaWdub3JlIHRoZSBmbGFnIChvdXIgdHJhbnNhY3Rpb24K d2FzIGFscmVhZHkgZGV0ZXJtaW5lZCB0byBiZSByZWFkLW9ubHkgc2FmZSwgYW5kIERPT01F RCBpcyBvbmx5IHNldAppbmNpZGVudGFsbHkgZHVyaW5nIHBhcnRpYWwgcmVsZWFzZSkuICBJ bXByb3ZlIGFuIGV4aXN0aW5nIGlzb2xhdGlvbiB0ZXN0CnNvIHRoYXQgaXQgcmVhY2hlcyB0 aGF0IGNhc2UuCgpCYWNrLXBhdGNoIHRvIDEyLiAgQnVnICMxNzExNi4gIERlZmVjdHMgaW4g Y29tbWl0IDQ3YTMzOGNmLgoKUmVwb3J0ZWQtYnk6IEFsZXhhbmRlciBMYWtoaW4gPGV4Y2x1 c2lvbkBnbWFpbC5jb20+CkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vMTcxMTYt ZDZjYTIxN2FjYzE4MGUzMCU0MHBvc3RncmVzcWwub3JnCi0tLQogc3JjL2JhY2tlbmQvc3Rv cmFnZS9sbWdyL3ByZWRpY2F0ZS5jICAgICAgICAgIHwgMjAgKysrLQogLi4uL2V4cGVjdGVk L3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0yLm91dCAgICAgIHwgNTcgKysrLS0tLS0tLS0KIC4u Li9leHBlY3RlZC9zZXJpYWxpemFibGUtcGFyYWxsZWwtMy5vdXQgICAgICB8IDk3ICsrKysr KysrKysrKysrKysrKysKIHNyYy90ZXN0L2lzb2xhdGlvbi9pc29sYXRpb25fc2NoZWR1bGUg ICAgICAgICB8ICAxICsKIC4uLi9zcGVjcy9zZXJpYWxpemFibGUtcGFyYWxsZWwtMi5zcGVj ICAgICAgICB8IDEyICsrLQogLi4uL3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0zLnNw ZWMgICAgICAgIHwgNDcgKysrKysrKysrCiA2IGZpbGVzIGNoYW5nZWQsIDE4NCBpbnNlcnRp b25zKCspLCA1MCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9p c29sYXRpb24vZXhwZWN0ZWQvc2VyaWFsaXphYmxlLXBhcmFsbGVsLTMub3V0CiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjL3Rlc3QvaXNvbGF0aW9uL3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJh bGxlbC0zLnNwZWMKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9zdG9yYWdlL2xtZ3IvcHJl ZGljYXRlLmMgYi9zcmMvYmFja2VuZC9zdG9yYWdlL2xtZ3IvcHJlZGljYXRlLmMKaW5kZXgg NTYyNjdiZGMzYy4uNDE2ODhkODA3OCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvc3RvcmFn ZS9sbWdyL3ByZWRpY2F0ZS5jCisrKyBiL3NyYy9iYWNrZW5kL3N0b3JhZ2UvbG1nci9wcmVk aWNhdGUuYwpAQCAtMzMzMSw2ICszMzMxLDcgQEAgU2V0TmV3U3hhY3RHbG9iYWxYbWluKHZv aWQpCiB2b2lkCiBSZWxlYXNlUHJlZGljYXRlTG9ja3MoYm9vbCBpc0NvbW1pdCwgYm9vbCBp c1JlYWRPbmx5U2FmZSkKIHsKKwlib29sCQlwYXJ0aWFsbHlSZWxlYXNpbmcgPSBmYWxzZTsK IAlib29sCQluZWVkVG9DbGVhcjsKIAlTRVJJQUxJWkFCTEVYQUNUICpyb1hhY3Q7CiAJZGxp c3RfbXV0YWJsZV9pdGVyIGl0ZXI7CkBAIC0zNDMxLDYgKzM0MzIsNyBAQCBSZWxlYXNlUHJl ZGljYXRlTG9ja3MoYm9vbCBpc0NvbW1pdCwgYm9vbCBpc1JlYWRPbmx5U2FmZSkKIAkJZWxz ZQogCQl7CiAJCQlNeVNlcmlhbGl6YWJsZVhhY3QtPmZsYWdzIHw9IFNYQUNUX0ZMQUdfUEFS VElBTExZX1JFTEVBU0VEOworCQkJcGFydGlhbGx5UmVsZWFzaW5nID0gdHJ1ZTsKIAkJCS8q IC4uLiBhbmQgcHJvY2VlZCB0byBwZXJmb3JtIHRoZSBwYXJ0aWFsIHJlbGVhc2UgYmVsb3cu ICovCiAJCX0KIAl9CkBAIC0zNjgxLDkgKzM2ODMsMTUgQEAgUmVsZWFzZVByZWRpY2F0ZUxv Y2tzKGJvb2wgaXNDb21taXQsIGJvb2wgaXNSZWFkT25seVNhZmUpCiAJICogc2VyaWFsaXph YmxlIHRyYW5zYWN0aW9ucyBjb21wbGV0ZXMuICBXZSB0aGVuIGZpbmQgdGhlICJuZXcgb2xk ZXN0IgogCSAqIHhtaW4gYW5kIHB1cmdlIGFueSB0cmFuc2FjdGlvbnMgd2hpY2ggZmluaXNo ZWQgYmVmb3JlIHRoaXMgdHJhbnNhY3Rpb24KIAkgKiB3YXMgbGF1bmNoZWQuCisJICoKKwkg KiBGb3IgcGFyYWxsZWwgcXVlcmllcyBpbiByZWFkLW9ubHkgdHJhbnNhY3Rpb25zLCBpdCBt aWdodCBydW4gdHdpY2UuCisJICogV2Ugb25seSByZWxlYXNlIHRoZSByZWZlcmVuY2Ugb24g dGhlIGZpcnN0IGNhbGwuCiAJICovCiAJbmVlZFRvQ2xlYXIgPSBmYWxzZTsKLQlpZiAoVHJh bnNhY3Rpb25JZEVxdWFscyhNeVNlcmlhbGl6YWJsZVhhY3QtPnhtaW4sIFByZWRYYWN0LT5T eGFjdEdsb2JhbFhtaW4pKQorCWlmICgocGFydGlhbGx5UmVsZWFzaW5nIHx8CisJCSAhU3hh Y3RJc1BhcnRpYWxseVJlbGVhc2VkKE15U2VyaWFsaXphYmxlWGFjdCkpICYmCisJCVRyYW5z YWN0aW9uSWRFcXVhbHMoTXlTZXJpYWxpemFibGVYYWN0LT54bWluLAorCQkJCQkJCVByZWRY YWN0LT5TeGFjdEdsb2JhbFhtaW4pKQogCXsKIAkJQXNzZXJ0KFByZWRYYWN0LT5TeGFjdEds b2JhbFhtaW5Db3VudCA+IDApOwogCQlpZiAoLS0oUHJlZFhhY3QtPlN4YWN0R2xvYmFsWG1p bkNvdW50KSA9PSAwKQpAQCAtNDgzOSwxMCArNDg0NywxNCBAQCBQcmVDb21taXRfQ2hlY2tG b3JTZXJpYWxpemF0aW9uRmFpbHVyZSh2b2lkKQogCiAJTFdMb2NrQWNxdWlyZShTZXJpYWxp emFibGVYYWN0SGFzaExvY2ssIExXX0VYQ0xVU0lWRSk7CiAKLQkvKiBDaGVjayBpZiBzb21l b25lIGVsc2UgaGFzIGFscmVhZHkgZGVjaWRlZCB0aGF0IHdlIG5lZWQgdG8gZGllICovCi0J aWYgKFN4YWN0SXNEb29tZWQoTXlTZXJpYWxpemFibGVYYWN0KSkKKwkvKgorCSAqIENoZWNr IGlmIHNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSBkZWNpZGVkIHRoYXQgd2UgbmVlZCB0byBk aWUuICBTaW5jZQorCSAqIHdlIHNldCBvdXIgb3duIERPT01FRCBmbGFnIHdoZW4gcGFydGlh bGx5IHJlbGVhc2luZywgaWdub3JlIGluIHRoYXQKKwkgKiBjYXNlLgorCSAqLworCWlmIChT eGFjdElzRG9vbWVkKE15U2VyaWFsaXphYmxlWGFjdCkgJiYKKwkJIVN4YWN0SXNQYXJ0aWFs bHlSZWxlYXNlZChNeVNlcmlhbGl6YWJsZVhhY3QpKQogCXsKLQkJQXNzZXJ0KCFTeGFjdElz UGFydGlhbGx5UmVsZWFzZWQoTXlTZXJpYWxpemFibGVYYWN0KSk7CiAJCUxXTG9ja1JlbGVh c2UoU2VyaWFsaXphYmxlWGFjdEhhc2hMb2NrKTsKIAkJZXJlcG9ydChFUlJPUiwKIAkJCQko ZXJyY29kZShFUlJDT0RFX1RfUl9TRVJJQUxJWkFUSU9OX0ZBSUxVUkUpLApkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0y Lm91dCBiL3NyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC9zZXJpYWxpemFibGUtcGFyYWxs ZWwtMi5vdXQKaW5kZXggOTI3NTNjY2YzOS4uOTA0ZmRkOTA4MCAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0yLm91dAor KysgYi9zcmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvc2VyaWFsaXphYmxlLXBhcmFsbGVs LTIub3V0CkBAIC0xLDUwICsxLDIzIEBACiBQYXJzZWQgdGVzdCBzcGVjIHdpdGggMiBzZXNz aW9ucwogCiBzdGFydGluZyBwZXJtdXRhdGlvbjogczFyIHMycjEgczFjIHMycjIgczJjCi1z dGVwIHMxcjogU0VMRUNUICogRlJPTSBmb287Ci0gYQotLS0KLSAxCi0gMgotIDMKLSA0Ci0g NQotIDYKLSA3Ci0gOAotIDkKLTEwCi0oMTAgcm93cykKK3N0ZXAgczFyOiBTRUxFQ1QgQ09V TlQoKikgRlJPTSBmb287Citjb3VudAorLS0tLS0KKyAgMTAwCisoMSByb3cpCiAKLXN0ZXAg czJyMTogU0VMRUNUICogRlJPTSBmb287Ci0gYQotLS0KLSAxCi0gMgotIDMKLSA0Ci0gNQot IDYKLSA3Ci0gOAotIDkKLTEwCi0oMTAgcm93cykKK3N0ZXAgczJyMTogU0VMRUNUIENPVU5U KCopIEZST00gZm9vOworY291bnQKKy0tLS0tCisgIDEwMAorKDEgcm93KQogCiBzdGVwIHMx YzogQ09NTUlUOwotc3RlcCBzMnIyOiBTRUxFQ1QgKiBGUk9NIGZvbzsKLSBhCi0tLQotIDEK LSAyCi0gMwotIDQKLSA1Ci0gNgotIDcKLSA4Ci0gOQotMTAKLSgxMCByb3dzKQorc3RlcCBz MnIyOiBTRUxFQ1QgQ09VTlQoKikgRlJPTSBmb287Citjb3VudAorLS0tLS0KKyAgMTAwCiso MSByb3cpCiAKIHN0ZXAgczJjOiBDT01NSVQ7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9pc29s YXRpb24vZXhwZWN0ZWQvc2VyaWFsaXphYmxlLXBhcmFsbGVsLTMub3V0IGIvc3JjL3Rlc3Qv aXNvbGF0aW9uL2V4cGVjdGVkL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0zLm91dApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi42NTQyNzZhMzg1Ci0tLSAvZGV2L251 bGwKKysrIGIvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3NlcmlhbGl6YWJsZS1wYXJh bGxlbC0zLm91dApAQCAtMCwwICsxLDk3IEBACitQYXJzZWQgdGVzdCBzcGVjIHdpdGggNCBz ZXNzaW9ucworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyIHMzciBzMnIxIHM0cjEgczFj IHMycjIgczNjIHM0cjIgczRjIHMyYworc3RlcCBzMXI6IFNFTEVDVCAqIEZST00gZm9vOwor IGEKKy0tCisgMQorIDIKKyAzCisgNAorIDUKKyA2CisgNworIDgKKyA5CisxMAorKDEwIHJv d3MpCisKK3N0ZXAgczNyOiBTRUxFQ1QgKiBGUk9NIGZvbzsKKyBhCistLQorIDEKKyAyCisg MworIDQKKyA1CisgNgorIDcKKyA4CisgOQorMTAKKygxMCByb3dzKQorCitzdGVwIHMycjE6 IFNFTEVDVCAqIEZST00gZm9vOworIGEKKy0tCisgMQorIDIKKyAzCisgNAorIDUKKyA2Cisg NworIDgKKyA5CisxMAorKDEwIHJvd3MpCisKK3N0ZXAgczRyMTogU0VMRUNUICogRlJPTSBm b287CisgYQorLS0KKyAxCisgMgorIDMKKyA0CisgNQorIDYKKyA3CisgOAorIDkKKzEwCiso MTAgcm93cykKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJyMjogU0VMRUNUICogRlJP TSBmb287CisgYQorLS0KKyAxCisgMgorIDMKKyA0CisgNQorIDYKKyA3CisgOAorIDkKKzEw CisoMTAgcm93cykKKworc3RlcCBzM2M6IENPTU1JVDsKK3N0ZXAgczRyMjogU0VMRUNUICog RlJPTSBmb287CisgYQorLS0KKyAxCisgMgorIDMKKyA0CisgNQorIDYKKyA3CisgOAorIDkK KzEwCisoMTAgcm93cykKKworc3RlcCBzNGM6IENPTU1JVDsKK3N0ZXAgczJjOiBDT01NSVQ7 CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVkdWxlIGIv c3JjL3Rlc3QvaXNvbGF0aW9uL2lzb2xhdGlvbl9zY2hlZHVsZQppbmRleCBmNGMwMTAwNmZj Li42N2VmOTNiNDQwIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9u X3NjaGVkdWxlCisrKyBiL3NyYy90ZXN0L2lzb2xhdGlvbi9pc29sYXRpb25fc2NoZWR1bGUK QEAgLTEwOCw0ICsxMDgsNSBAQCB0ZXN0OiBjbHVzdGVyLWNvbmZsaWN0LXBhcnRpdGlvbgog dGVzdDogdHJ1bmNhdGUtY29uZmxpY3QKIHRlc3Q6IHNlcmlhbGl6YWJsZS1wYXJhbGxlbAog dGVzdDogc2VyaWFsaXphYmxlLXBhcmFsbGVsLTIKK3Rlc3Q6IHNlcmlhbGl6YWJsZS1wYXJh bGxlbC0zCiB0ZXN0OiBtYXR2aWV3LXdyaXRlLXNrZXcKZGlmZiAtLWdpdCBhL3NyYy90ZXN0 L2lzb2xhdGlvbi9zcGVjcy9zZXJpYWxpemFibGUtcGFyYWxsZWwtMi5zcGVjIGIvc3JjL3Rl c3QvaXNvbGF0aW9uL3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0yLnNwZWMKaW5kZXgg ZjM5NDFmNzg2My4uYzk3NWQ5NmQ3NyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvaXNvbGF0aW9u L3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0yLnNwZWMKKysrIGIvc3JjL3Rlc3QvaXNv bGF0aW9uL3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0yLnNwZWMKQEAgLTMsNyArMyw4 IEBACiAKIHNldHVwCiB7Ci0JQ1JFQVRFIFRBQkxFIGZvbyBBUyBTRUxFQ1QgZ2VuZXJhdGVf c2VyaWVzKDEsIDEwKTo6aW50IGE7CisJQ1JFQVRFIFRBQkxFIGZvbyBBUyBTRUxFQ1QgZ2Vu ZXJhdGVfc2VyaWVzKDEsIDEwMCk6OmludCBhOworCUNSRUFURSBJTkRFWCBPTiBmb28oYSk7 CiAJQUxURVIgVEFCTEUgZm9vIFNFVCAocGFyYWxsZWxfd29ya2VycyA9IDIpOwogfQogCkBA IC0xNCw3ICsxNSw3IEBAIHRlYXJkb3duCiAKIHNlc3Npb24gczEKIHNldHVwIAkJeyBCRUdJ TiBUUkFOU0FDVElPTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOyB9Ci1zdGVwIHMx cgl7IFNFTEVDVCAqIEZST00gZm9vOyB9CitzdGVwIHMxcgl7IFNFTEVDVCBDT1VOVCgqKSBG Uk9NIGZvbzsgfQogc3RlcCBzMWMgCXsgQ09NTUlUOyB9CiAKIHNlc3Npb24gczIKQEAgLTIy LDkgKzIzLDEyIEBAIHNldHVwCQl7CiAJCQkgIEJFR0lOIFRSQU5TQUNUSU9OIElTT0xBVElP TiBMRVZFTCBTRVJJQUxJWkFCTEUgUkVBRCBPTkxZOwogCQkJICBTRVQgcGFyYWxsZWxfc2V0 dXBfY29zdCA9IDA7CiAJCQkgIFNFVCBwYXJhbGxlbF90dXBsZV9jb3N0ID0gMDsKKwkJCSAg U0VUIG1pbl9wYXJhbGxlbF9pbmRleF9zY2FuX3NpemUgPSAwOworCQkJICBTRVQgcGFyYWxs ZWxfbGVhZGVyX3BhcnRpY2lwYXRpb24gPSBvZmY7CisJCQkgIFNFVCBlbmFibGVfc2Vxc2Nh biA9IG9mZjsKIAkJCX0KLXN0ZXAgczJyMQl7IFNFTEVDVCAqIEZST00gZm9vOyB9Ci1zdGVw IHMycjIJeyBTRUxFQ1QgKiBGUk9NIGZvbzsgfQorc3RlcCBzMnIxCXsgU0VMRUNUIENPVU5U KCopIEZST00gZm9vOyB9CitzdGVwIHMycjIJeyBTRUxFQ1QgQ09VTlQoKikgRlJPTSBmb287 IH0KIHN0ZXAgczJjCXsgQ09NTUlUOyB9CiAKIHBlcm11dGF0aW9uIHMxciBzMnIxIHMxYyBz MnIyIHMyYwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL3NwZWNzL3NlcmlhbGl6 YWJsZS1wYXJhbGxlbC0zLnNwZWMgYi9zcmMvdGVzdC9pc29sYXRpb24vc3BlY3Mvc2VyaWFs aXphYmxlLXBhcmFsbGVsLTMuc3BlYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwLi5jMjcyOThjMjRmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvaXNvbGF0 aW9uL3NwZWNzL3NlcmlhbGl6YWJsZS1wYXJhbGxlbC0zLnNwZWMKQEAgLTAsMCArMSw0NyBA QAorIyBFeGVyY2lzZSB0aGUgY2FzZSB3aGVyZSBhIHJlYWQtb25seSBzZXJpYWxpemFibGUg dHJhbnNhY3Rpb24gaGFzCisjIFNYQUNUX0ZMQUdfUk9fU0FGRSBzZXQgaW4gYSBwYXJhbGxl bCBxdWVyeS4gIFRoaXMgdmFyaWFudCBpcyBsaWtlCisjIHR3byBjb3BpZXMgb2YgIzIgcnVu bmluZyBhdCB0aGUgc2FtZSB0aW1lLCBhbmQgZXhjZXJjaXNlcyB0aGUgY2FzZQorIyB3aGVy ZSBhbm90aGVyIHRyYW5zYWN0aW9uIGhhcyB0aGUgc2FtZSB4bWluLCBhbmQgaXQgaXMgdGhl IG9sZGVzdC4KKworc2V0dXAKK3sKKwlDUkVBVEUgVEFCTEUgZm9vIEFTIFNFTEVDVCBnZW5l cmF0ZV9zZXJpZXMoMSwgMTApOjppbnQgYTsKKwlBTFRFUiBUQUJMRSBmb28gU0VUIChwYXJh bGxlbF93b3JrZXJzID0gMik7Cit9CisKK3RlYXJkb3duCit7CisJRFJPUCBUQUJMRSBmb287 Cit9CisKK3Nlc3Npb24gczEKK3NldHVwIAkJeyBCRUdJTiBUUkFOU0FDVElPTiBJU09MQVRJ T04gTEVWRUwgU0VSSUFMSVpBQkxFOyB9CitzdGVwIHMxcgl7IFNFTEVDVCAqIEZST00gZm9v OyB9CitzdGVwIHMxYyAJeyBDT01NSVQ7IH0KKworc2Vzc2lvbiBzMgorc2V0dXAJCXsKKwkJ CSAgQkVHSU4gVFJBTlNBQ1RJT04gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRSBSRUFE IE9OTFk7CisJCQkgIFNFVCBwYXJhbGxlbF9zZXR1cF9jb3N0ID0gMDsKKwkJCSAgU0VUIHBh cmFsbGVsX3R1cGxlX2Nvc3QgPSAwOworCQkJfQorc3RlcCBzMnIxCXsgU0VMRUNUICogRlJP TSBmb287IH0KK3N0ZXAgczJyMgl7IFNFTEVDVCAqIEZST00gZm9vOyB9CitzdGVwIHMyYwl7 IENPTU1JVDsgfQorCitzZXNzaW9uIHMzCitzZXR1cAkJeyBCRUdJTiBUUkFOU0FDVElPTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOyB9CitzdGVwIHMzcgl7IFNFTEVDVCAqIEZS T00gZm9vOyB9CitzdGVwIHMzYwl7IENPTU1JVDsgfQorCitzZXNzaW9uIHM0CitzZXR1cAkJ eworCQkJICBCRUdJTiBUUkFOU0FDVElPTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF IFJFQUQgT05MWTsKKwkJCSAgU0VUIHBhcmFsbGVsX3NldHVwX2Nvc3QgPSAwOworCQkJICBT RVQgcGFyYWxsZWxfdHVwbGVfY29zdCA9IDA7CisJCQl9CitzdGVwIHM0cjEJeyBTRUxFQ1Qg KiBGUk9NIGZvbzsgfQorc3RlcCBzNHIyCXsgU0VMRUNUICogRlJPTSBmb287IH0KK3N0ZXAg czRjCXsgQ09NTUlUOyB9CisKK3Blcm11dGF0aW9uIHMxciBzM3IgczJyMSBzNHIxIHMxYyBz MnIyIHMzYyBzNHIyIHM0YyBzMmMKLS0gCjIuMzAuMgoK --------------QiDBIYVnogGbIhG0VjxuabnX--