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 1wF5Xf-004jVw-1s for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 07:29:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wF5Xe-007I3l-1t for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 07:29:06 +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 1wF5Xe-007I3c-0o for pgsql-hackers@lists.postgresql.org; Tue, 21 Apr 2026 07:29:06 +0000 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wF5Xc-00000002GJA-0Vdz for pgsql-hackers@lists.postgresql.org; Tue, 21 Apr 2026 07:29:05 +0000 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-4891b0786beso16813575e9.1 for ; Tue, 21 Apr 2026 00:29:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776756543; x=1777361343; darn=lists.postgresql.org; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=SDzMK1G9oh+TBdg0WBdbrSriF+w9ek9UCQziFEukyfU=; b=Vw22cQd8+Y5I/9qVIpgpfuOOUW3R82uTmTH9hdWBnHKn2EWSUQcizV6ftPScSca9/N R3CaOTjGS5lzDNwbBh5ac/6pMxCk/5a7SdzKH4H6mhfcyerq2GsxhHDfV5+krD74b808 nZ+4hCC/41o8crzPhOcQ/07WmHE/qOok0J1WRDhwePKi3Tj44SGgGbKTqu0zGAof9CTG Z/xn5+iJYrD9MlPQqIooIMqj2In5g8cqcOqT+UmyoegV86BHxCRysnK8JERqW4nkGNcg ybzI2a0GkuveDjYSNDdHhxFabA6h55swVMhGmdFSiHRB56monLX0ULsBtBVoGYWo1N5H WkEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776756543; x=1777361343; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SDzMK1G9oh+TBdg0WBdbrSriF+w9ek9UCQziFEukyfU=; b=W8WhJd5zcRHCPhhkX6XsLwzMJQflM4KXpAlQteEEs4nzokiKbrQI5NXfl93/0NpRbE qcbPeuM9K46GfTpRxPY5O5xmKtRYc8JikT7KCrlDzS+iOhI34DKyBjDDjcof+4ZspfA+ Sc+EV5E5ZFq2NBzvCyWmWI4JgiW+jqwA8JA96P+lNEgc0ZkT/sidT9L7uwQX6zVAWjzt 6au7ycFsQbSkh3bBed22wNREMH4AsIHBBllKsGIOLRI9JoznoJOkz2F9WlXKMcouEAAr RYMeT1FqXgFgw179FOo1mNNI6oSVvkbPrytezsQy4LZfxwt34kBJNoinAA9icEkmso1V Vt7w== X-Gm-Message-State: AOJu0YwedBjXaaj9Ylz1yioKPYRglU3KQh1AVn2mAB43YahrQFC4Zoh6 LlVN30tb80nabxC3bVC0aW/zWijI6siHU75/iKLQPZRpl+heXlZtsQSLaVnocIqDhAo= X-Gm-Gg: AeBDieuK6RrK6LpNLlDVwGEdKN4jw4qQkzJeAHvYy5G8M/UYVyMh3MKrrxluMZy/oIJ gxyKOXYUG9VxfUN2SD4lOx9u9T12HPSiKFjpaclsS6nAmyR7lHKzd+5i/xANOh9TopAlnj4Re+b rKTWyavWtHIUIOEMS0NNbLisKZ2YNhOA9n1WqGczYAFmU2m1u04jWi4i4nT+UYZO6nqVZpEaEK/ BihR+R51/5sIr47YrJp9ofxh+QmV+CpxyHtMaCavYKSUsaCFonUe+F+l2w3bAmMCZVWJR8rxy3R TVC1NscqFbJba3qKnPqKia2qOZCiZ8Lb0l1InTgk97s0Qkd7gSh2GXv09HDCbFZDVqbS00DMBJ2 kuj9SHfZLvU2EXYsl5sD3XZzQjqE9fVwR7LU+mHSS60V4eTRTHWWcFGWVoZNkCcWIOFBQa4NHGH 2wU7hppxz9345CnvtB3qg5OEhurpSuZX41JxFTFGTQ8bRZbpNFBp8E4IZs0i9txSXXmNp2hebv5 S0UwHIRwQ== X-Received: by 2002:a05:600c:621b:b0:487:5c0:671f with SMTP id 5b1f17b1804b1-488fb742e74mr274873395e9.9.1776756542771; Tue, 21 Apr 2026 00:29:02 -0700 (PDT) Received: from [192.168.0.86] (84.123.230.95.dyn.user.ono.com. [84.123.230.95]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a55b8baaesm46540165e9.10.2026.04.21.00.29.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 21 Apr 2026 00:29:02 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------zf3rfV7HqG3EKhabiBJnqEZU" Message-ID: <20be3d9d-4147-492a-b69c-d69a87a014a9@gmail.com> Date: Tue, 21 Apr 2026 09:29:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: A very quick observation of dangling pointers in Postgres pathlists From: Andrei Lepikhov To: PostgreSQL Hackers , Tom Lane References: Content-Language: en-US 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. --------------zf3rfV7HqG3EKhabiBJnqEZU Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 17/04/2026 10:56, Andrei Lepikhov wrote: > The best-known problematic code example causing this issue is > apply_scanjoin_target_to_paths(), and the current_rel/final_rel game from commit > 0927d2f46dd. Quickly fixing it, I see some more combinations have emerged: On closer inspection, it looks like all the detected cases come from the same issue in create_ordered_paths. The ordered_rel has the same path in its pathlist as the input_rel. Sometimes, this path is removed and freed from ordered_rel, which leads to a dangling pointer in the child RelOptInfo. I've attached a patch that shows how to fix the issue. Some regression tests change because of a hidden rule where a projection and its subpath have different target lists. Right now, the patch always enforces a projection, even if the target lists are the same. This is still open for discussion on whether there's a better way to handle it. -- regards, Andrei Lepikhov, pgEdge --------------zf3rfV7HqG3EKhabiBJnqEZU Content-Type: text/plain; charset=UTF-8; name="v0-0001-Do-not-put-one-path-into-different-pathlists.patch" Content-Disposition: attachment; filename*0="v0-0001-Do-not-put-one-path-into-different-pathlists.patch" Content-Transfer-Encoding: base64 RnJvbSAzYmJkZTg0MmFkMmRhNDRhY2Q0NzE3MGIzZTk5NDlmNjIxMTAyZDUwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmVpIFYuIExlcGlraG92IiA8bGVwaWhvdkBn bWFpbC5jb20+CkRhdGU6IE1vbiwgMjAgQXByIDIwMjYgMTc6MjU6MjcgKzAyMDAKU3ViamVj dDogW1BBVENIIHYwXSBEbyBub3QgcHV0IG9uZSBwYXRoIGludG8gZGlmZmVyZW50IHBhdGhs aXN0cwoKLS0tCiBzcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFubmVyLmMgICAgICAg ICAgfCAzNCArKysrKysrKysrKysrKy0tLS0tCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2xpbWl0Lm91dCAgICAgICAgICAgfCAgNiArKy0tCiAuLi4vcmVncmVzcy9leHBlY3RlZC9z ZWxlY3RfZGlzdGluY3Rfb24ub3V0ICAgfCAyNiArKysrKysrLS0tLS0tLQogc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9zZWxlY3RfcGFyYWxsZWwub3V0IHwgMzIgKysrKysrKystLS0t LS0tLS0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdHNyZi5vdXQgICAgICAgICAgICB8 ICA4ICsrLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDQ2IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL3BsYW5u ZXIuYyBiL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL3BsYW5uZXIuYwppbmRleCA1NmJi MWQ3OThlMy4uY2QzMjUwYzk2NzIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL29wdGltaXpl ci9wbGFuL3BsYW5uZXIuYworKysgYi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFu bmVyLmMKQEAgLTU0NjIsNyArNTQ2MiwyMCBAQCBjcmVhdGVfb3JkZXJlZF9wYXRocyhQbGFu bmVySW5mbyAqcm9vdCwKIAkJCQkJCQkJCQkJCWlucHV0X3BhdGgtPnBhdGhrZXlzLCAmcHJl c29ydGVkX2tleXMpOwogCiAJCWlmIChpc19zb3J0ZWQpCi0JCQlzb3J0ZWRfcGF0aCA9IGlu cHV0X3BhdGg7CisJCXsKKwkJCS8qCisJCQkgKiBUaGUgaW5wdXRfcGF0aCBpcyBhbHJlYWR5 IHNvcnRlZDsgd2Ugd291bGQgbGlrZSB0byByZXVzZSBpdCBhcworCQkJICogdGhlIG9yZGVy ZWQgcmVsJ3MgcGF0aC4gIEJ1dCB3ZSBtdXN0IG5vdCBzaGFyZSB0aGUgcG9pbnRlciB3aXRo CisJCQkgKiBpbnB1dF9yZWwtPnBhdGhsaXN0LiAgV3JhcCBpdCBpbiBhIGZyZXNoIFByb2pl Y3Rpb25QYXRoLgorCQkJICovCisJCQlQYXRoCSAgICp3cmFwX3RhcmdldCA9IGlucHV0X3Bh dGg7CisKKwkJCWlmIChJc0Eod3JhcF90YXJnZXQsIFByb2plY3Rpb25QYXRoKSkKKwkJCQl3 cmFwX3RhcmdldCA9ICgoUHJvamVjdGlvblBhdGggKikgd3JhcF90YXJnZXQpLT5zdWJwYXRo OworCisJCQlzb3J0ZWRfcGF0aCA9IChQYXRoICopIGNyZWF0ZV9wcm9qZWN0aW9uX3BhdGgo cm9vdCwgb3JkZXJlZF9yZWwsCisJCQkJCQkJCQkJCQkJCSAgd3JhcF90YXJnZXQsIHRhcmdl dCk7CisJCX0KIAkJZWxzZQogCQl7CiAJCQkvKgpAQCAtNTQ5NCwxNSArNTUwNywxOCBAQCBj cmVhdGVfb3JkZXJlZF9wYXRocyhQbGFubmVySW5mbyAqcm9vdCwKIAkJCQkJCQkJCQkJCQkJ CQkJcm9vdC0+c29ydF9wYXRoa2V5cywKIAkJCQkJCQkJCQkJCQkJCQkJcHJlc29ydGVkX2tl eXMsCiAJCQkJCQkJCQkJCQkJCQkJCWxpbWl0X3R1cGxlcyk7Ci0JCX0KIAotCQkvKgotCQkg KiBJZiB0aGUgcGF0aHRhcmdldCBvZiB0aGUgcmVzdWx0IHBhdGggaGFzIGRpZmZlcmVudCBl eHByZXNzaW9ucyBmcm9tCi0JCSAqIHRoZSB0YXJnZXQgdG8gYmUgYXBwbGllZCwgYSBwcm9q ZWN0aW9uIHN0ZXAgaXMgbmVlZGVkLgotCQkgKi8KLQkJaWYgKCFlcXVhbChzb3J0ZWRfcGF0 aC0+cGF0aHRhcmdldC0+ZXhwcnMsIHRhcmdldC0+ZXhwcnMpKQotCQkJc29ydGVkX3BhdGgg PSBhcHBseV9wcm9qZWN0aW9uX3RvX3BhdGgocm9vdCwgb3JkZXJlZF9yZWwsCi0JCQkJCQkJ CQkJCQkgICBzb3J0ZWRfcGF0aCwgdGFyZ2V0KTsKKwkJCS8qCisJCQkgKiBJZiB0aGUgcGF0 aHRhcmdldCBvZiB0aGUgcmVzdWx0IHBhdGggaGFzIGRpZmZlcmVudCBleHByZXNzaW9ucwor CQkJICogZnJvbSB0aGUgdGFyZ2V0IHRvIGJlIGFwcGxpZWQsIGEgcHJvamVjdGlvbiBzdGVw IGlzIG5lZWRlZC4KKwkJCSAqIFdoZW4gaXNfc29ydGVkIGlzIHRydWUgdGhlIHdyYXAgYWJv dmUgYWxyZWFkeSBjYXJyaWVzIHRoZQorCQkJICogb3JkZXJlZCByZWwncyB0YXJnZXQsIHNv IHRoaXMgb25seSBhcHBsaWVzIHRvIHRoZSBzb3J0ZWQKKwkJCSAqIGJyYW5jaC4KKwkJCSAq LworCQkJaWYgKCFlcXVhbChzb3J0ZWRfcGF0aC0+cGF0aHRhcmdldC0+ZXhwcnMsIHRhcmdl dC0+ZXhwcnMpKQorCQkJCXNvcnRlZF9wYXRoID0gYXBwbHlfcHJvamVjdGlvbl90b19wYXRo KHJvb3QsIG9yZGVyZWRfcmVsLAorCQkJCQkJCQkJCQkJCSAgIHNvcnRlZF9wYXRoLCB0YXJn ZXQpOworCQl9CiAKIAkJYWRkX3BhdGgob3JkZXJlZF9yZWwsIHNvcnRlZF9wYXRoKTsKIAl9 CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2xpbWl0Lm91dCBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvbGltaXQub3V0CmluZGV4IGUzYmNjNjgwNjUzLi5j MTJiMjQ5OGY2NSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9saW1p dC5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9saW1pdC5vdXQKQEAgLTQz OSwxNCArNDM5LDE0IEBAIHNlbGVjdCBjdXJydmFsKCd0ZXN0c2VxJyk7CiBleHBsYWluICh2 ZXJib3NlLCBjb3N0cyBvZmYpCiBzZWxlY3QgdW5pcXVlMSwgdW5pcXVlMiwgZ2VuZXJhdGVf c2VyaWVzKDEsMTApCiAgIGZyb20gdGVuazEgb3JkZXIgYnkgdW5pcXVlMiBsaW1pdCA3Owot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAg CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KICBMaW1pdAogICAgT3V0cHV0OiB1bmlxdWUxLCB1bmlxdWUyLCAoZ2VuZXJh dGVfc2VyaWVzKDEsIDEwKSkKICAgIC0+ICBQcm9qZWN0U2V0CiAgICAgICAgICBPdXRwdXQ6 IHVuaXF1ZTEsIHVuaXF1ZTIsIGdlbmVyYXRlX3NlcmllcygxLCAxMCkKICAgICAgICAgIC0+ ICBJbmRleCBTY2FuIHVzaW5nIHRlbmsxX3VuaXF1ZTIgb24gcHVibGljLnRlbmsxCi0gICAg ICAgICAgICAgICBPdXRwdXQ6IHVuaXF1ZTEsIHVuaXF1ZTIsIHR3bywgZm91ciwgdGVuLCB0 d2VudHksIGh1bmRyZWQsIHRob3VzYW5kLCB0d290aG91c2FuZCwgZml2ZXRob3VzLCB0ZW50 aG91cywgb2RkLCBldmVuLCBzdHJpbmd1MSwgc3RyaW5ndTIsIHN0cmluZzQKKyAgICAgICAg ICAgICAgIE91dHB1dDogdW5pcXVlMSwgdW5pcXVlMgogKDYgcm93cykKIAogc2VsZWN0IHVu aXF1ZTEsIHVuaXF1ZTIsIGdlbmVyYXRlX3NlcmllcygxLDEwKQpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zZWxlY3RfZGlzdGluY3Rfb24ub3V0IGIvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9zZWxlY3RfZGlzdGluY3Rfb24ub3V0CmluZGV4IDc1YjFl N2QzMDBmLi40YWUwOWM4YjE4MSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9zZWxlY3RfZGlzdGluY3Rfb24ub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvc2VsZWN0X2Rpc3RpbmN0X29uLm91dApAQCAtODEsMTIgKzgxLDEzIEBAIHNlbGVj dCBkaXN0aW5jdCBvbiAoMSkgZmxvb3IocmFuZG9tKCkpIGFzIHIsIGYxIGZyb20gaW50NF90 Ymwgb3JkZXIgYnkgMSwyOwogRVhQTEFJTiAoQ09TVFMgT0ZGKQogU0VMRUNUIERJU1RJTkNU IE9OIChmb3VyKSBmb3VyLHR3bwogICAgRlJPTSB0ZW5rMSBXSEVSRSBmb3VyID0gMCBPUkRF UiBCWSAxOwotICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQotIExpbWl0Ci0gICAtPiAgU2VxIFNjYW4gb24gdGVuazEKLSAgICAg ICAgIEZpbHRlcjogKGZvdXIgPSAwKQotKDMgcm93cykKKyAgICAgICAgICAgIFFVRVJZIFBM QU4gICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBS ZXN1bHQKKyAgIC0+ICBMaW1pdAorICAgICAgICAgLT4gIFNlcSBTY2FuIG9uIHRlbmsxCisg ICAgICAgICAgICAgICBGaWx0ZXI6IChmb3VyID0gMCkKKyg0IHJvd3MpCiAKIC0tIGFuZCBj aGVjayB0aGUgcmVzdWx0IG9mIHRoZSBhYm92ZSBxdWVyeSBpcyBjb3JyZWN0CiBTRUxFQ1Qg RElTVElOQ1QgT04gKGZvdXIpIGZvdXIsdHdvCkBAIC0xMTQsMTIgKzExNSwxMyBAQCBTRUxF Q1QgRElTVElOQ1QgT04gKGZvdXIpIGZvdXIsdHdvCiBFWFBMQUlOIChDT1NUUyBPRkYpCiBT RUxFQ1QgRElTVElOQ1QgT04gKGZvdXIpIGZvdXIsaHVuZHJlZAogICAgRlJPTSB0ZW5rMSBX SEVSRSBmb3VyID0gMCBPUkRFUiBCWSAxLDI7Ci0gICAgICAgICAgICAgICAgICBRVUVSWSBQ TEFOICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KLSBMaW1pdAotICAgLT4gIEluZGV4IFNjYW4gdXNpbmcgdGVu azFfaHVuZHJlZCBvbiB0ZW5rMQotICAgICAgICAgRmlsdGVyOiAoZm91ciA9IDApCi0oMyBy b3dzKQorICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAg ICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCisgUmVzdWx0CisgICAtPiAgTGltaXQKKyAgICAgICAgIC0+ICBJbmRleCBTY2Fu IHVzaW5nIHRlbmsxX2h1bmRyZWQgb24gdGVuazEKKyAgICAgICAgICAgICAgIEZpbHRlcjog KGZvdXIgPSAwKQorKDQgcm93cykKIAogLS0KIC0tIFRlc3QgdGhlIHBsYW5uZXIncyBhYmls aXR5IHRvIHJlb3JkZXIgdGhlIGRpc3RpbmN0Q2xhdXNlIFBhdGhrZXlzIHRvIG1hdGNoCmRp ZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3NlbGVjdF9wYXJhbGxlbC5v dXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3NlbGVjdF9wYXJhbGxlbC5vdXQKaW5k ZXggOTMzOTIxZDE4NjAuLmEzZDZmM2Q0NTc2IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3NlbGVjdF9wYXJhbGxlbC5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9zZWxlY3RfcGFyYWxsZWwub3V0CkBAIC03NTMsMjAgKzc1MywxOCBAQCBl bmQ7CiAkJCBsYW5ndWFnZSBwbHBnc3FsIFBBUkFMTEVMIFNBRkU7CiBleHBsYWluIChjb3N0 cyBvZmYsIHZlcmJvc2UpCiAgICAgc2VsZWN0IHRlbiwgc3Bfc2ltcGxlX2Z1bmModGVuKSBm cm9tIHRlbmsxIHdoZXJlIHRlbiA8IDEwMCBvcmRlciBieSB0ZW47Ci0gICAgICAgICAgICAg ICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAg ICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIEdhdGhlciBNZXJnZQotICAgT3V0 cHV0OiB0ZW4sIChzcF9zaW1wbGVfZnVuYyh0ZW4pKQorICAgT3V0cHV0OiB0ZW4sIHNwX3Np bXBsZV9mdW5jKHRlbikKICAgIFdvcmtlcnMgUGxhbm5lZDogNAotICAgLT4gIFJlc3VsdAot ICAgICAgICAgT3V0cHV0OiB0ZW4sIHNwX3NpbXBsZV9mdW5jKHRlbikKLSAgICAgICAgIC0+ ICBTb3J0CisgICAtPiAgU29ydAorICAgICAgICAgT3V0cHV0OiB0ZW4KKyAgICAgICAgIFNv cnQgS2V5OiB0ZW5rMS50ZW4KKyAgICAgICAgIC0+ICBQYXJhbGxlbCBTZXEgU2NhbiBvbiBw dWJsaWMudGVuazEKICAgICAgICAgICAgICAgIE91dHB1dDogdGVuCi0gICAgICAgICAgICAg ICBTb3J0IEtleTogdGVuazEudGVuCi0gICAgICAgICAgICAgICAtPiAgUGFyYWxsZWwgU2Vx IFNjYW4gb24gcHVibGljLnRlbmsxCi0gICAgICAgICAgICAgICAgICAgICBPdXRwdXQ6IHRl bgotICAgICAgICAgICAgICAgICAgICAgRmlsdGVyOiAodGVuazEudGVuIDwgMTAwKQotKDEx IHJvd3MpCisgICAgICAgICAgICAgICBGaWx0ZXI6ICh0ZW5rMS50ZW4gPCAxMDApCisoOSBy b3dzKQogCiBkcm9wIGZ1bmN0aW9uIHNwX3NpbXBsZV9mdW5jKGludGVnZXIpOwogLS0gdGVz dCBoYW5kbGluZyBvZiBTUkZzIGluIHRhcmdldGxpc3QgKGJ1ZyBpbiAxMC4wKQpAQCAtMTI2 MSwxOCArMTI1OSwxNiBAQCBTRUxFQ1QgZ2VuZXJhdGVfc2VyaWVzKDEsIHR3byksIGFycmF5 KHNlbGVjdCBnZW5lcmF0ZV9zZXJpZXMoMSwgdHdvKSkKICAgIC0+ICBHYXRoZXIgTWVyZ2UK ICAgICAgICAgIE91dHB1dDogdGVuazEudHdvLCB0ZW5rMS50ZW50aG91cwogICAgICAgICAg V29ya2VycyBQbGFubmVkOiA0Ci0gICAgICAgICAtPiAgUmVzdWx0Ci0gICAgICAgICAgICAg ICBPdXRwdXQ6IHRlbmsxLnR3bywgdGVuazEudGVudGhvdXMKLSAgICAgICAgICAgICAgIC0+ ICBTb3J0CisgICAgICAgICAtPiAgU29ydAorICAgICAgICAgICAgICAgT3V0cHV0OiB0ZW5r MS50ZW50aG91cywgdGVuazEudHdvCisgICAgICAgICAgICAgICBTb3J0IEtleTogdGVuazEu dGVudGhvdXMKKyAgICAgICAgICAgICAgIC0+ICBQYXJhbGxlbCBTZXEgU2NhbiBvbiBwdWJs aWMudGVuazEKICAgICAgICAgICAgICAgICAgICAgIE91dHB1dDogdGVuazEudGVudGhvdXMs IHRlbmsxLnR3bwotICAgICAgICAgICAgICAgICAgICAgU29ydCBLZXk6IHRlbmsxLnRlbnRo b3VzCi0gICAgICAgICAgICAgICAgICAgICAtPiAgUGFyYWxsZWwgU2VxIFNjYW4gb24gcHVi bGljLnRlbmsxCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBPdXRwdXQ6IHRlbmsxLnRl bnRob3VzLCB0ZW5rMS50d28KICAgIFN1YlBsYW4gYXJyYXlfMQogICAgICAtPiAgUHJvamVj dFNldAogICAgICAgICAgICBPdXRwdXQ6IGdlbmVyYXRlX3NlcmllcygxLCB0ZW5rMS50d28p CiAgICAgICAgICAgIC0+ICBSZXN1bHQKLSgxNiByb3dzKQorKDE0IHJvd3MpCiAKIC0tIG11 c3QgZGlzYWxsb3cgcHVzaGluZyBzb3J0IGJlbG93IGdhdGhlciB3aGVuIHBhdGhrZXkgY29u dGFpbnMgYW4gU1JGCiBFWFBMQUlOIChWRVJCT1NFLCBDT1NUUyBPRkYpCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RzcmYub3V0IGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC90c3JmLm91dAppbmRleCBjNGY3YjE4N2Y1Yi4uYTBkMjk1ODU5ZWQgMTAw NjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdHNyZi5vdXQKKysrIGIvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC90c3JmLm91dApAQCAtNDU5LDEyICs0NTksMTIgQEAg cmVzZXQgZW5hYmxlX2hhc2hhZ2c7CiAtLSBjYXNlIHdpdGggZGVnZW5lcmF0ZSBPUkRFUiBC WQogZXhwbGFpbiAodmVyYm9zZSwgY29zdHMgb2ZmKQogc2VsZWN0ICdmb28nIGFzIGYsIGdl bmVyYXRlX3NlcmllcygxLDIpIGFzIGcgZnJvbSBmZXcgb3JkZXIgYnkgMTsKLSAgICAgICAg ICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICBR VUVSWSBQTEFOICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgUHJvamVjdFNldAotICAgT3V0cHV0OiAnZm9v Jzo6dGV4dCwgZ2VuZXJhdGVfc2VyaWVzKDEsIDIpCisgICBPdXRwdXQ6ICgnZm9vJzo6dGV4 dCksIGdlbmVyYXRlX3NlcmllcygxLCAyKQogICAgLT4gIFNlcSBTY2FuIG9uIHB1YmxpYy5m ZXcKLSAgICAgICAgIE91dHB1dDogaWQsIGRhdGFhLCBkYXRhYgorICAgICAgICAgT3V0cHV0 OiAnZm9vJzo6dGV4dAogKDQgcm93cykKIAogc2VsZWN0ICdmb28nIGFzIGYsIGdlbmVyYXRl X3NlcmllcygxLDIpIGFzIGcgZnJvbSBmZXcgb3JkZXIgYnkgMTsKLS0gCjIuNTMuMAoK --------------zf3rfV7HqG3EKhabiBJnqEZU--