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 1jJr7I-0001k1-0O for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2020 04:06:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jJr7G-0008LE-TX for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2020 04:06:06 +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 1jJr7G-0008L7-Jj for pgsql-hackers@lists.postgresql.org; Thu, 02 Apr 2020 04:06:06 +0000 Received: from oss.nttdata.com ([49.212.34.109]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jJr7C-0006OK-0n for pgsql-hackers@lists.postgresql.org; Thu, 02 Apr 2020 04:06:06 +0000 Received: from hnk.local (p2421237-ipbf2725funabasi.chiba.ocn.ne.jp [122.24.33.237]) by oss.nttdata.com (Postfix) with ESMTPSA id C04456050F; Thu, 2 Apr 2020 13:05:56 +0900 (JST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.102.2 at oss.nttdata.com Subject: Re: BUG #16109: Postgres planning time is high across version (Expose buffer usage during planning in EXPLAIN) To: Julien Rouhaud Cc: Justin Pryzby , Andres Freund , PostgreSQL Hackers References: <16109-26a1a88651e90608@postgresql.org> <20191112205506.rvadbx2dnku3paaw@alap3.anarazel.de> <20200124055534.GM13621@telsasoft.com> <20200331013146.GA14618@telsasoft.com> <7bdd1e99-335f-a24a-ffbd-8a578a761970@oss.nttdata.com> From: Fujii Masao Message-ID: <045faedf-108d-26e6-7307-ab1ac2d64624@oss.nttdata.com> Date: Thu, 2 Apr 2020 13:05:56 +0900 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------2C123BC7E40475A278B9B702" Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------2C123BC7E40475A278B9B702 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 2020/04/02 3:47, Julien Rouhaud wrote: > On Wed, Apr 1, 2020 at 7:51 PM Fujii Masao wrote: >> >> >> On 2020/03/31 10:31, Justin Pryzby wrote: >>> On Wed, Jan 29, 2020 at 12:15:59PM +0100, Julien Rouhaud wrote: >>>> Rebase due to conflict with 3ec20c7091e97. >>> >>> This is failing to apply probably since 4a539a25ebfc48329fd656a95f3c1eb2cda38af3. >>> Could you rebase? (Also, not sure if this can be set as RFC?) >> >> I updated the patch. Attached. > > Thanks a lot! I'm sorry I missed Justin's ping, and it I just > realized that my cron job that used to warn me about cfbot failure was > broken :( > >> +/* Compute the difference between two BufferUsage */ >> +BufferUsage >> +ComputeBufferCounters(BufferUsage *start, BufferUsage *stop) >> >> Since BufferUsageAccumDiff() was exported, ComputeBufferCounters() is >> no longer necessary. In the patched version, BufferUsageAccumDiff() is >> used to calculate the difference of buffer usage. > > Indeed, exposing BufferUsageAccumDiff wa definitely a good thing! > >> + if (es->summary && (planduration || es->buffers)) >> + ExplainOpenGroup("Planning", "Planning", true, es); >> >> Isn't it more appropriate to check "bufusage" instead of "es->buffers" here? >> The patch changes the code so that "bufusage" is checked. > > AFAICS not unless ExplainOneQuery is also changed to pass a NULL > pointer if the BUFFER option wasn't provided (and maybe also > optionally skip the planning buffer computation). With this version > you now get: > > =# explain (analyze, buffers off) update t1 set id = id; > QUERY PLAN > ------------------------------------------------------------------------------------------------------- > Update on t1 (cost=0.00..22.70 rows=1270 width=42) (actual > time=0.170..0.170 rows=0 loops=1) > -> Seq Scan on t1 (cost=0.00..22.70 rows=1270 width=42) (actual > time=0.050..0.054 rows=1 loops=1) > Planning Time: 1.461 ms > Buffers: shared hit=25 > Execution Time: 1.071 ms > (5 rows) > > which seems wrong to me. > > I reused the es->buffers to avoid having needing something like: Yes, you're right! So I updated the patch as you suggested. Attached is the updated version of the patch. Thanks for the review! Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION --------------2C123BC7E40475A278B9B702 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="show_planning_buffers-v5.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="show_planning_buffers-v5.patch" ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2V4cGxhaW4uYyBiL3NyYy9iYWNr ZW5kL2NvbW1hbmRzL2V4cGxhaW4uYwppbmRleCBlZTBlNjM4ZjMzLi44MWExOGFiYmViIDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9leHBsYWluLmMKKysrIGIvc3JjL2Jh Y2tlbmQvY29tbWFuZHMvZXhwbGFpbi5jCkBAIC0zNzIsNyArMzcyLDExIEBAIEV4cGxhaW5P bmVRdWVyeShRdWVyeSAqcXVlcnksIGludCBjdXJzb3JPcHRpb25zLAogCQlQbGFubmVkU3Rt dCAqcGxhbjsKIAkJaW5zdHJfdGltZQlwbGFuc3RhcnQsCiAJCQkJCXBsYW5kdXJhdGlvbjsK KwkJQnVmZmVyVXNhZ2UgYnVmdXNhZ2Vfc3RhcnQsCisJCQkJCWJ1ZnVzYWdlOwogCisJCWlm IChlcy0+YnVmZmVycykKKwkJCWJ1ZnVzYWdlX3N0YXJ0ID0gcGdCdWZmZXJVc2FnZTsKIAkJ SU5TVFJfVElNRV9TRVRfQ1VSUkVOVChwbGFuc3RhcnQpOwogCiAJCS8qIHBsYW4gdGhlIHF1 ZXJ5ICovCkBAIC0zODEsOSArMzg1LDE2IEBAIEV4cGxhaW5PbmVRdWVyeShRdWVyeSAqcXVl cnksIGludCBjdXJzb3JPcHRpb25zLAogCQlJTlNUUl9USU1FX1NFVF9DVVJSRU5UKHBsYW5k dXJhdGlvbik7CiAJCUlOU1RSX1RJTUVfU1VCVFJBQ1QocGxhbmR1cmF0aW9uLCBwbGFuc3Rh cnQpOwogCisJCS8qIGNhbGMgZGlmZmVyZW5jZXMgb2YgYnVmZmVyIGNvdW50ZXJzLiAqLwor CQlpZiAoZXMtPmJ1ZmZlcnMpCisJCXsKKwkJCW1lbXNldCgmYnVmdXNhZ2UsIDAsIHNpemVv ZihCdWZmZXJVc2FnZSkpOworCQkJQnVmZmVyVXNhZ2VBY2N1bURpZmYoJmJ1ZnVzYWdlLCAm cGdCdWZmZXJVc2FnZSwgJmJ1ZnVzYWdlX3N0YXJ0KTsKKwkJfQorCiAJCS8qIHJ1biBpdCAo aWYgbmVlZGVkKSBhbmQgcHJvZHVjZSBvdXRwdXQgKi8KIAkJRXhwbGFpbk9uZVBsYW4ocGxh biwgaW50bywgZXMsIHF1ZXJ5U3RyaW5nLCBwYXJhbXMsIHF1ZXJ5RW52LAotCQkJCQkgICAm cGxhbmR1cmF0aW9uKTsKKwkJCQkJICAgJnBsYW5kdXJhdGlvbiwgKGVzLT5idWZmZXJzID8g JmJ1ZnVzYWdlIDogTlVMTCkpOwogCX0KIH0KIApAQCAtNDc2LDcgKzQ4Nyw4IEBAIEV4cGxh aW5PbmVVdGlsaXR5KE5vZGUgKnV0aWxpdHlTdG10LCBJbnRvQ2xhdXNlICppbnRvLCBFeHBs YWluU3RhdGUgKmVzLAogdm9pZAogRXhwbGFpbk9uZVBsYW4oUGxhbm5lZFN0bXQgKnBsYW5u ZWRzdG10LCBJbnRvQ2xhdXNlICppbnRvLCBFeHBsYWluU3RhdGUgKmVzLAogCQkJICAgY29u c3QgY2hhciAqcXVlcnlTdHJpbmcsIFBhcmFtTGlzdEluZm8gcGFyYW1zLAotCQkJICAgUXVl cnlFbnZpcm9ubWVudCAqcXVlcnlFbnYsIGNvbnN0IGluc3RyX3RpbWUgKnBsYW5kdXJhdGlv bikKKwkJCSAgIFF1ZXJ5RW52aXJvbm1lbnQgKnF1ZXJ5RW52LCBjb25zdCBpbnN0cl90aW1l ICpwbGFuZHVyYXRpb24sCisJCQkgICBjb25zdCBCdWZmZXJVc2FnZSAqYnVmdXNhZ2UpCiB7 CiAJRGVzdFJlY2VpdmVyICpkZXN0OwogCVF1ZXJ5RGVzYyAgKnF1ZXJ5RGVzYzsKQEAgLTU2 MCw2ICs1NzIsOSBAQCBFeHBsYWluT25lUGxhbihQbGFubmVkU3RtdCAqcGxhbm5lZHN0bXQs IEludG9DbGF1c2UgKmludG8sIEV4cGxhaW5TdGF0ZSAqZXMsCiAJLyogQ3JlYXRlIHRleHR1 YWwgZHVtcCBvZiBwbGFuIHRyZWUgKi8KIAlFeHBsYWluUHJpbnRQbGFuKGVzLCBxdWVyeURl c2MpOwogCisJaWYgKGVzLT5zdW1tYXJ5ICYmIChwbGFuZHVyYXRpb24gfHwgYnVmdXNhZ2Up KQorCQlFeHBsYWluT3Blbkdyb3VwKCJQbGFubmluZyIsICJQbGFubmluZyIsIHRydWUsIGVz KTsKKwogCWlmIChlcy0+c3VtbWFyeSAmJiBwbGFuZHVyYXRpb24pCiAJewogCQlkb3VibGUJ CXBsYW50aW1lID0gSU5TVFJfVElNRV9HRVRfRE9VQkxFKCpwbGFuZHVyYXRpb24pOwpAQCAt NTY3LDYgKzU4MiwxOSBAQCBFeHBsYWluT25lUGxhbihQbGFubmVkU3RtdCAqcGxhbm5lZHN0 bXQsIEludG9DbGF1c2UgKmludG8sIEV4cGxhaW5TdGF0ZSAqZXMsCiAJCUV4cGxhaW5Qcm9w ZXJ0eUZsb2F0KCJQbGFubmluZyBUaW1lIiwgIm1zIiwgMTAwMC4wICogcGxhbnRpbWUsIDMs IGVzKTsKIAl9CiAKKwkvKiBTaG93IGJ1ZmZlciB1c2FnZSAqLworCWlmIChlcy0+c3VtbWFy eSAmJiBidWZ1c2FnZSkKKwl7CisJCWlmIChlcy0+Zm9ybWF0ID09IEVYUExBSU5fRk9STUFU X1RFWFQpCisJCQllcy0+aW5kZW50Kys7CisJCXNob3dfYnVmZmVyX3VzYWdlKGVzLCBidWZ1 c2FnZSk7CisJCWlmIChlcy0+Zm9ybWF0ID09IEVYUExBSU5fRk9STUFUX1RFWFQpCisJCQll cy0+aW5kZW50LS07CisJfQorCisJaWYgKGVzLT5zdW1tYXJ5ICYmIChwbGFuZHVyYXRpb24g fHwgYnVmdXNhZ2UpKQorCQlFeHBsYWluQ2xvc2VHcm91cCgiUGxhbm5pbmciLCAiUGxhbm5p bmciLCB0cnVlLCBlcyk7CisKIAkvKiBQcmludCBpbmZvIGFib3V0IHJ1bnRpbWUgb2YgdHJp Z2dlcnMgKi8KIAlpZiAoZXMtPmFuYWx5emUpCiAJCUV4cGxhaW5QcmludFRyaWdnZXJzKGVz LCBxdWVyeURlc2MpOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvcHJlcGFy ZS5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvcHJlcGFyZS5jCmluZGV4IDI4NGE1YmZiZWMu LjgwZDZkZjhhYzEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ByZXBhcmUu YworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9wcmVwYXJlLmMKQEAgLTYxNiw3ICs2MTYs MTEgQEAgRXhwbGFpbkV4ZWN1dGVRdWVyeShFeGVjdXRlU3RtdCAqZXhlY3N0bXQsIEludG9D bGF1c2UgKmludG8sIEV4cGxhaW5TdGF0ZSAqZXMsCiAJRVN0YXRlCSAgICplc3RhdGUgPSBO VUxMOwogCWluc3RyX3RpbWUJcGxhbnN0YXJ0OwogCWluc3RyX3RpbWUJcGxhbmR1cmF0aW9u OworCUJ1ZmZlclVzYWdlIGJ1ZnVzYWdlX3N0YXJ0LAorCQkJCWJ1ZnVzYWdlOwogCisJaWYg KGVzLT5idWZmZXJzKQorCQlidWZ1c2FnZV9zdGFydCA9IHBnQnVmZmVyVXNhZ2U7CiAJSU5T VFJfVElNRV9TRVRfQ1VSUkVOVChwbGFuc3RhcnQpOwogCiAJLyogTG9vayBpdCB1cCBpbiB0 aGUgaGFzaCB0YWJsZSAqLwpAQCAtNjU0LDYgKzY1OCwxMyBAQCBFeHBsYWluRXhlY3V0ZVF1 ZXJ5KEV4ZWN1dGVTdG10ICpleGVjc3RtdCwgSW50b0NsYXVzZSAqaW50bywgRXhwbGFpblN0 YXRlICplcywKIAlJTlNUUl9USU1FX1NFVF9DVVJSRU5UKHBsYW5kdXJhdGlvbik7CiAJSU5T VFJfVElNRV9TVUJUUkFDVChwbGFuZHVyYXRpb24sIHBsYW5zdGFydCk7CiAKKwkvKiBjYWxj IGRpZmZlcmVuY2VzIG9mIGJ1ZmZlciBjb3VudGVycy4gKi8KKwlpZiAoZXMtPmJ1ZmZlcnMp CisJeworCQltZW1zZXQoJmJ1ZnVzYWdlLCAwLCBzaXplb2YoQnVmZmVyVXNhZ2UpKTsKKwkJ QnVmZmVyVXNhZ2VBY2N1bURpZmYoJmJ1ZnVzYWdlLCAmcGdCdWZmZXJVc2FnZSwgJmJ1ZnVz YWdlX3N0YXJ0KTsKKwl9CisKIAlwbGFuX2xpc3QgPSBjcGxhbi0+c3RtdF9saXN0OwogCiAJ LyogRXhwbGFpbiBlYWNoIHF1ZXJ5ICovCkBAIC02NjMsNyArNjc0LDcgQEAgRXhwbGFpbkV4 ZWN1dGVRdWVyeShFeGVjdXRlU3RtdCAqZXhlY3N0bXQsIEludG9DbGF1c2UgKmludG8sIEV4 cGxhaW5TdGF0ZSAqZXMsCiAKIAkJaWYgKHBzdG10LT5jb21tYW5kVHlwZSAhPSBDTURfVVRJ TElUWSkKIAkJCUV4cGxhaW5PbmVQbGFuKHBzdG10LCBpbnRvLCBlcywgcXVlcnlfc3RyaW5n LCBwYXJhbUxJLCBxdWVyeUVudiwKLQkJCQkJCSAgICZwbGFuZHVyYXRpb24pOworCQkJCQkJ ICAgJnBsYW5kdXJhdGlvbiwgKGVzLT5idWZmZXJzID8gJmJ1ZnVzYWdlIDogTlVMTCkpOwog CQllbHNlCiAJCQlFeHBsYWluT25lVXRpbGl0eShwc3RtdC0+dXRpbGl0eVN0bXQsIGludG8s IGVzLCBxdWVyeV9zdHJpbmcsCiAJCQkJCQkJICBwYXJhbUxJLCBxdWVyeUVudik7CmRpZmYg LS1naXQgYS9zcmMvaW5jbHVkZS9jb21tYW5kcy9leHBsYWluLmggYi9zcmMvaW5jbHVkZS9j b21tYW5kcy9leHBsYWluLmgKaW5kZXggNTRmNjI0MGU1ZS4uNzM5YzFkMGI0MiAxMDA2NDQK LS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvZXhwbGFpbi5oCisrKyBiL3NyYy9pbmNsdWRl L2NvbW1hbmRzL2V4cGxhaW4uaApAQCAtODksNyArODksOCBAQCBleHRlcm4gdm9pZCBFeHBs YWluT25lVXRpbGl0eShOb2RlICp1dGlsaXR5U3RtdCwgSW50b0NsYXVzZSAqaW50bywKIGV4 dGVybiB2b2lkIEV4cGxhaW5PbmVQbGFuKFBsYW5uZWRTdG10ICpwbGFubmVkc3RtdCwgSW50 b0NsYXVzZSAqaW50bywKIAkJCQkJCSAgIEV4cGxhaW5TdGF0ZSAqZXMsIGNvbnN0IGNoYXIg KnF1ZXJ5U3RyaW5nLAogCQkJCQkJICAgUGFyYW1MaXN0SW5mbyBwYXJhbXMsIFF1ZXJ5RW52 aXJvbm1lbnQgKnF1ZXJ5RW52LAotCQkJCQkJICAgY29uc3QgaW5zdHJfdGltZSAqcGxhbmR1 cmF0aW9uKTsKKwkJCQkJCSAgIGNvbnN0IGluc3RyX3RpbWUgKnBsYW5kdXJhdGlvbiwKKwkJ CQkJCSAgIGNvbnN0IEJ1ZmZlclVzYWdlICpidWZ1c2FnZSk7CiAKIGV4dGVybiB2b2lkIEV4 cGxhaW5QcmludFBsYW4oRXhwbGFpblN0YXRlICplcywgUXVlcnlEZXNjICpxdWVyeURlc2Mp OwogZXh0ZXJuIHZvaWQgRXhwbGFpblByaW50VHJpZ2dlcnMoRXhwbGFpblN0YXRlICplcywg UXVlcnlEZXNjICpxdWVyeURlc2MpOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9leHBsYWluLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZXhwbGFp bi5vdXQKaW5kZXggOGYzMWMzMDhjNi4uMTkxZWE1ZGU3ZiAxMDA2NDQKLS0tIGEvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9leHBsYWluLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL2V4cGxhaW4ub3V0CkBAIC0xMDUsNyArMTA1LDE5IEBAIHNlbGVjdCBleHBs YWluX2ZpbHRlcignZXhwbGFpbiAoYW5hbHl6ZSwgYnVmZmVycywgZm9ybWF0IGpzb24pIHNl bGVjdCAqIGZyb20gaW50CiAgICAgICAgIlRlbXAgUmVhZCBCbG9ja3MiOiBOLCAgICAgICsK ICAgICAgICAiVGVtcCBXcml0dGVuIEJsb2NrcyI6IE4gICAgKwogICAgICB9LCAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gICAgICJQbGFubmluZyBUaW1lIjogTi5OLCAgICAg ICAgICsKKyAgICAgIlBsYW5uaW5nIjogeyAgICAgICAgICAgICAgICAgKworICAgICAgICJQ bGFubmluZyBUaW1lIjogTi5OLCAgICAgICArCisgICAgICAgIlNoYXJlZCBIaXQgQmxvY2tz IjogTiwgICAgICsKKyAgICAgICAiU2hhcmVkIFJlYWQgQmxvY2tzIjogTiwgICAgKworICAg ICAgICJTaGFyZWQgRGlydGllZCBCbG9ja3MiOiBOLCArCisgICAgICAgIlNoYXJlZCBXcml0 dGVuIEJsb2NrcyI6IE4sICsKKyAgICAgICAiTG9jYWwgSGl0IEJsb2NrcyI6IE4sICAgICAg KworICAgICAgICJMb2NhbCBSZWFkIEJsb2NrcyI6IE4sICAgICArCisgICAgICAgIkxvY2Fs IERpcnRpZWQgQmxvY2tzIjogTiwgICsKKyAgICAgICAiTG9jYWwgV3JpdHRlbiBCbG9ja3Mi OiBOLCAgKworICAgICAgICJUZW1wIFJlYWQgQmxvY2tzIjogTiwgICAgICArCisgICAgICAg IlRlbXAgV3JpdHRlbiBCbG9ja3MiOiBOICAgICsKKyAgICAgfSwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKwogICAgICAiVHJpZ2dlcnMiOiBbICAgICAgICAgICAgICAgICArCiAg ICAgIF0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKICAgICAgIkV4ZWN1dGlvbiBU aW1lIjogTi5OICAgICAgICAgKwpAQCAtMTQyLDcgKzE1NCwxOSBAQCBzZWxlY3QgZXhwbGFp bl9maWx0ZXIoJ2V4cGxhaW4gKGFuYWx5emUsIGJ1ZmZlcnMsIGZvcm1hdCB4bWwpIHNlbGVj dCAqIGZyb20gaW50OAogICAgICAgIDxUZW1wLVJlYWQtQmxvY2tzPk48L1RlbXAtUmVhZC1C bG9ja3M+ICAgICAgICAgICsKICAgICAgICA8VGVtcC1Xcml0dGVuLUJsb2Nrcz5OPC9UZW1w LVdyaXR0ZW4tQmxvY2tzPiAgICArCiAgICAgIDwvUGxhbj4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICA8UGxhbm5pbmctVGltZT5OLk48L1Bs YW5uaW5nLVRpbWU+ICAgICAgICAgICAgICAgICsKKyAgICAgPFBsYW5uaW5nPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCisgICAgICAgPFBsYW5uaW5nLVRp bWU+Ti5OPC9QbGFubmluZy1UaW1lPiAgICAgICAgICAgICAgKworICAgICAgIDxTaGFyZWQt SGl0LUJsb2Nrcz5OPC9TaGFyZWQtSGl0LUJsb2Nrcz4gICAgICAgICsKKyAgICAgICA8U2hh cmVkLVJlYWQtQmxvY2tzPk48L1NoYXJlZC1SZWFkLUJsb2Nrcz4gICAgICArCisgICAgICAg PFNoYXJlZC1EaXJ0aWVkLUJsb2Nrcz5OPC9TaGFyZWQtRGlydGllZC1CbG9ja3M+KworICAg ICAgIDxTaGFyZWQtV3JpdHRlbi1CbG9ja3M+TjwvU2hhcmVkLVdyaXR0ZW4tQmxvY2tzPisK KyAgICAgICA8TG9jYWwtSGl0LUJsb2Nrcz5OPC9Mb2NhbC1IaXQtQmxvY2tzPiAgICAgICAg ICArCisgICAgICAgPExvY2FsLVJlYWQtQmxvY2tzPk48L0xvY2FsLVJlYWQtQmxvY2tzPiAg ICAgICAgKworICAgICAgIDxMb2NhbC1EaXJ0aWVkLUJsb2Nrcz5OPC9Mb2NhbC1EaXJ0aWVk LUJsb2Nrcz4gICsKKyAgICAgICA8TG9jYWwtV3JpdHRlbi1CbG9ja3M+TjwvTG9jYWwtV3Jp dHRlbi1CbG9ja3M+ICArCisgICAgICAgPFRlbXAtUmVhZC1CbG9ja3M+TjwvVGVtcC1SZWFk LUJsb2Nrcz4gICAgICAgICAgKworICAgICAgIDxUZW1wLVdyaXR0ZW4tQmxvY2tzPk48L1Rl bXAtV3JpdHRlbi1CbG9ja3M+ICAgICsKKyAgICAgPC9QbGFubmluZz4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgIDxUcmlnZ2Vycz4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwogICAgICA8L1RyaWdnZXJzPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKICAgICAgPEV4ZWN1dGlvbi1U aW1lPk4uTjwvRXhlY3V0aW9uLVRpbWU+ICAgICAgICAgICAgICArCkBAIC0xNzYsNyArMjAw LDE4IEBAIHNlbGVjdCBleHBsYWluX2ZpbHRlcignZXhwbGFpbiAoYW5hbHl6ZSwgYnVmZmVy cywgZm9ybWF0IHlhbWwpIHNlbGVjdCAqIGZyb20gaW50CiAgICAgIExvY2FsIFdyaXR0ZW4g QmxvY2tzOiBOICArCiAgICAgIFRlbXAgUmVhZCBCbG9ja3M6IE4gICAgICArCiAgICAgIFRl bXAgV3JpdHRlbiBCbG9ja3M6IE4gICArCi0gICBQbGFubmluZyBUaW1lOiBOLk4gICAgICAg ICArCisgICBQbGFubmluZzogICAgICAgICAgICAgICAgICArCisgICAgIFBsYW5uaW5nIFRp bWU6IE4uTiAgICAgICArCisgICAgIFNoYXJlZCBIaXQgQmxvY2tzOiBOICAgICArCisgICAg IFNoYXJlZCBSZWFkIEJsb2NrczogTiAgICArCisgICAgIFNoYXJlZCBEaXJ0aWVkIEJsb2Nr czogTiArCisgICAgIFNoYXJlZCBXcml0dGVuIEJsb2NrczogTiArCisgICAgIExvY2FsIEhp dCBCbG9ja3M6IE4gICAgICArCisgICAgIExvY2FsIFJlYWQgQmxvY2tzOiBOICAgICArCisg ICAgIExvY2FsIERpcnRpZWQgQmxvY2tzOiBOICArCisgICAgIExvY2FsIFdyaXR0ZW4gQmxv Y2tzOiBOICArCisgICAgIFRlbXAgUmVhZCBCbG9ja3M6IE4gICAgICArCisgICAgIFRlbXAg V3JpdHRlbiBCbG9ja3M6IE4gICArCiAgICBUcmlnZ2VyczogICAgICAgICAgICAgICAgICAr CiAgICBFeGVjdXRpb24gVGltZTogTi5OCiAoMSByb3cpCkBAIC0zNjYsOSArNDAxLDIxIEBA IHNlbGVjdCBqc29uYl9wcmV0dHkoCiAgICAgICAgICAgICAgIlNoYXJlZCBEaXJ0aWVkIEJs b2NrcyI6IDAsICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgICAgICAgIlNoYXJlZCBX cml0dGVuIEJsb2NrcyI6IDAgICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgICB9LCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCisgICAg ICAgICAiUGxhbm5pbmciOiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICArCisgICAgICAgICAgICAgIlBsYW5uaW5nIFRpbWUiOiAwLjAsICAgICAgICAgICAgICAg ICAgICAgICAgICArCisgICAgICAgICAgICAgIkxvY2FsIEhpdCBCbG9ja3MiOiAwLCAgICAg ICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAgIlRlbXAgUmVhZCBCbG9ja3Mi OiAwLCAgICAgICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAgIkxvY2FsIFJl YWQgQmxvY2tzIjogMCwgICAgICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAg IlNoYXJlZCBIaXQgQmxvY2tzIjogMCwgICAgICAgICAgICAgICAgICAgICAgICArCisgICAg ICAgICAgICAgIlNoYXJlZCBSZWFkIEJsb2NrcyI6IDAsICAgICAgICAgICAgICAgICAgICAg ICArCisgICAgICAgICAgICAgIlRlbXAgV3JpdHRlbiBCbG9ja3MiOiAwLCAgICAgICAgICAg ICAgICAgICAgICArCisgICAgICAgICAgICAgIkxvY2FsIERpcnRpZWQgQmxvY2tzIjogMCwg ICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAgIkxvY2FsIFdyaXR0ZW4gQmxv Y2tzIjogMCwgICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAgIlNoYXJlZCBE aXJ0aWVkIEJsb2NrcyI6IDAsICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAg IlNoYXJlZCBXcml0dGVuIEJsb2NrcyI6IDAgICAgICAgICAgICAgICAgICAgICArCisgICAg ICAgICB9LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICArCiAgICAgICAgICAiVHJpZ2dlcnMiOiBbICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICArCiAgICAgICAgICBdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAiUGxhbm5pbmcgVGltZSI6IDAuMCwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgICAiRXhlY3V0aW9uIFRp bWUiOiAwLjAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgIH0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgXQo= --------------2C123BC7E40475A278B9B702--