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 1lvdIz-0004vg-IR for pgsql-hackers@arkaria.postgresql.org; Tue, 22 Jun 2021 10:06:53 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lvdIy-0004Pn-Ab for pgsql-hackers@arkaria.postgresql.org; Tue, 22 Jun 2021 10:06:52 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lvdIx-0004Pf-QP for pgsql-hackers@lists.postgresql.org; Tue, 22 Jun 2021 10:06:52 +0000 Received: from sfr-1.cri.mines-paristech.fr ([77.158.180.225] helo=smtp.cri.ensmp.fr) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lvdIu-0002cc-HF for pgsql-hackers@postgresql.org; Tue, 22 Jun 2021 10:06:50 +0000 Received: from petersbourg.cri.ensmp.fr (petersbourg.cri.ensmp.fr [10.2.14.5]) by smtp.cri.ensmp.fr (Postfix) with ESMTPSA id 9E45EC0227; Tue, 22 Jun 2021 12:08:41 +0200 (CEST) Date: Tue, 22 Jun 2021 12:06:45 +0200 (CEST) From: Fabien COELHO X-X-Sender: fabien@pseudo To: Michael Paquier cc: Andrew Dunstan , Thomas Munro , Alvaro Herrera , Gregory Smith , PostgreSQL-development , david.christensen@crunchydata.com Subject: Re: pgbench logging broken by time logic changes In-Reply-To: Message-ID: References: <202106200318.gxnon4vrc7t6@alvherre.pgsql> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="2056645051-870502544-1624356405=:883117" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --2056645051-870502544-1624356405=:883117 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 8BIT Bonjour Michaël, >> If this were core server code threatening data integrity I would be >> inclined to be more strict, but after all pg_bench is a utility program, >> and I think we can allow a little more latitude. > > +1. Let's be flexible here. It looks better to not rush a fix, and > we still have some time ahead. Attached an updated v8 patch which adds (reinstate) an improved TAP test which would have caught the various regressions on logs. Given that such tests were removed once before, I'm unsure whether they will be acceptable, despite that their usefulness has been clearly demonstrated. At least it is for the record. Sigh:-( -- Fabien. --2056645051-870502544-1624356405=:883117 Content-Type: text/x-diff; name=pgbench-log-fix-8.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=pgbench-log-fix-8.patch ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdiZW5jaC9wZ2JlbmNoLmMgYi9zcmMv YmluL3BnYmVuY2gvcGdiZW5jaC5jDQppbmRleCBlNjEwNTViNmI3Li5kZmIy ZmY2ODU5IDEwMDY0NA0KLS0tIGEvc3JjL2Jpbi9wZ2JlbmNoL3BnYmVuY2gu Yw0KKysrIGIvc3JjL2Jpbi9wZ2JlbmNoL3BnYmVuY2guYw0KQEAgLTM0Myw2 ICszNDMsMTIgQEAgdHlwZWRlZiBzdHJ1Y3QgU3RhdHNEYXRhDQogCVNpbXBs ZVN0YXRzIGxhZzsNCiB9IFN0YXRzRGF0YTsNCiANCisvKg0KKyAqIEZvciBk aXNwbGF5aW5nIGVwb2NoIHRpbWVzdGFtcCwgYXMgc29tZSB0aW1lIGZ1bmN0 aW9ucyBtYXkgaGF2ZQ0KKyAqIGFub3RoZXIgcmVmZXJlbmNlLg0KKyAqLw0K K3BnX3RpbWVfdXNlY190IGVwb2NoX3NoaWZ0Ow0KKw0KIC8qDQogICogU3Ry dWN0IHRvIGtlZXAgcmFuZG9tIHN0YXRlLg0KICAqLw0KQEAgLTY0OSw3ICs2 NTUsNyBAQCBzdGF0aWMgdm9pZCBzZXREb3VibGVWYWx1ZShQZ0JlbmNoVmFs dWUgKnB2LCBkb3VibGUgZHZhbCk7DQogc3RhdGljIGJvb2wgZXZhbHVhdGVF eHByKENTdGF0ZSAqc3QsIFBnQmVuY2hFeHByICpleHByLA0KIAkJCQkJCSBQ Z0JlbmNoVmFsdWUgKnJldHZhbCk7DQogc3RhdGljIENvbm5lY3Rpb25TdGF0 ZUVudW0gZXhlY3V0ZU1ldGFDb21tYW5kKENTdGF0ZSAqc3QsIHBnX3RpbWVf dXNlY190ICpub3cpOw0KLXN0YXRpYyB2b2lkIGRvTG9nKFRTdGF0ZSAqdGhy ZWFkLCBDU3RhdGUgKnN0LA0KK3N0YXRpYyB2b2lkIGRvTG9nKFRTdGF0ZSAq dGhyZWFkLCBDU3RhdGUgKnN0LCBib29sIHR4LA0KIAkJCQkgIFN0YXRzRGF0 YSAqYWdnLCBib29sIHNraXBwZWQsIGRvdWJsZSBsYXRlbmN5LCBkb3VibGUg bGFnKTsNCiBzdGF0aWMgdm9pZCBwcm9jZXNzWGFjdFN0YXRzKFRTdGF0ZSAq dGhyZWFkLCBDU3RhdGUgKnN0LCBwZ190aW1lX3VzZWNfdCAqbm93LA0KIAkJ CQkJCQkgYm9vbCBza2lwcGVkLCBTdGF0c0RhdGEgKmFnZyk7DQpAQCAtMzc2 NiwxNiArMzc3Miw0NyBAQCBleGVjdXRlTWV0YUNvbW1hbmQoQ1N0YXRlICpz dCwgcGdfdGltZV91c2VjX3QgKm5vdykNCiAJcmV0dXJuIENTVEFURV9FTkRf Q09NTUFORDsNCiB9DQogDQorLyogcHJpbnQgYWdncmVnYXRlZCByZXBvcnQg dG8gbG9nZmlsZSAqLw0KK3N0YXRpYyB2b2lkDQorbG9nQWdnKEZJTEUgKmxv Z2ZpbGUsIFN0YXRzRGF0YSAqYWdnKQ0KK3sNCisJZnByaW50Zihsb2dmaWxl LCBJTlQ2NF9GT1JNQVQgIiAiIElOVDY0X0ZPUk1BVCAiICUuMGYgJS4wZiAl LjBmICUuMGYiLA0KKwkJCShhZ2ctPnN0YXJ0X3RpbWUgKyBlcG9jaF9zaGlm dCkgLyAxMDAwMDAwLA0KKwkJCWFnZy0+Y250LA0KKwkJCWFnZy0+bGF0ZW5j eS5zdW0sDQorCQkJYWdnLT5sYXRlbmN5LnN1bTIsDQorCQkJYWdnLT5sYXRl bmN5Lm1pbiwNCisJCQlhZ2ctPmxhdGVuY3kubWF4KTsNCisJaWYgKHRocm90 dGxlX2RlbGF5KQ0KKwl7DQorCQlmcHJpbnRmKGxvZ2ZpbGUsICIgJS4wZiAl LjBmICUuMGYgJS4wZiIsDQorCQkJCWFnZy0+bGFnLnN1bSwNCisJCQkJYWdn LT5sYWcuc3VtMiwNCisJCQkJYWdnLT5sYWcubWluLA0KKwkJCQlhZ2ctPmxh Zy5tYXgpOw0KKwkJaWYgKGxhdGVuY3lfbGltaXQpDQorCQkJZnByaW50Zihs b2dmaWxlLCAiICIgSU5UNjRfRk9STUFULCBhZ2ctPnNraXBwZWQpOw0KKwl9 DQorCWZwdXRjKCdcbicsIGxvZ2ZpbGUpOw0KK30NCisNCiAvKg0KICAqIFBy aW50IGxvZyBlbnRyeSBhZnRlciBjb21wbGV0aW5nIG9uZSB0cmFuc2FjdGlv bi4NCiAgKg0KKyAqIFBhcmFtIHR4IHRlbGxzIHdoZXRoZXIgdGhlIGNhbGwg YWN0dWFsbHkgcmVwcmVzZW50cyBhIHRyYW5zYWN0aW9uLA0KKyAqIG9yIGlm IGl0IGlzIHVzZWQgdG8gZmx1c2ggYWdncmVnYXRlZCBsb2dzLg0KKyAqDQor ICogVGhlIGZ1bmN0aW9uIGJlaGF2aW9yIGNoYW5nZXMgZGVwZW5kaW5nIG9u IHNhbXBsZV9yYXRlIChhIGZyYWN0aW9uIG9mDQorICogdHJhbnNhY3Rpb24g aXMgcmVwb3J0ZWQpIGFuZCBhZ2dfaW50ZXJ2YWwgKHRyYW5zYWN0aW9ucyBh cmUgYWdncmVnYXRlZA0KKyAqIGFuZCByZXBvcnRlZCBvbmNlIGV2ZXJ5IGFn Z19pbnRlcnZhbCBzZWNvbmRzKS4NCisgKg0KICAqIFdlIHByaW50IFVuaXgt ZXBvY2ggdGltZXN0YW1wcyBpbiB0aGUgbG9nLCBzbyB0aGF0IGVudHJpZXMg Y2FuIGJlDQogICogY29ycmVsYXRlZCBhZ2FpbnN0IG90aGVyIGxvZ3MuICBP biBzb21lIHBsYXRmb3JtcyB0aGlzIGNvdWxkIGJlIG9idGFpbmVkDQogICog ZnJvbSB0aGUgY2FsbGVyLCBidXQgcmF0aGVyIHRoYW4gZ2V0IGVudGFuZ2xl ZCB3aXRoIHRoYXQsIHdlIGp1c3QgZWF0DQogICogdGhlIGNvc3Qgb2YgYW4g ZXh0cmEgc3lzY2FsbCBpbiBhbGwgY2FzZXMuDQogICovDQogc3RhdGljIHZv aWQNCi1kb0xvZyhUU3RhdGUgKnRocmVhZCwgQ1N0YXRlICpzdCwNCitkb0xv ZyhUU3RhdGUgKnRocmVhZCwgQ1N0YXRlICpzdCwgYm9vbCB0eCwNCiAJICBT dGF0c0RhdGEgKmFnZywgYm9vbCBza2lwcGVkLCBkb3VibGUgbGF0ZW5jeSwg ZG91YmxlIGxhZykNCiB7DQogCUZJTEUJICAgKmxvZ2ZpbGUgPSB0aHJlYWQt PmxvZ2ZpbGU7DQpAQCAtMzc5NCw0MyArMzgzMSwzNiBAQCBkb0xvZyhUU3Rh dGUgKnRocmVhZCwgQ1N0YXRlICpzdCwNCiAJLyogc2hvdWxkIHdlIGFnZ3Jl Z2F0ZSB0aGUgcmVzdWx0cyBvciBub3Q/ICovDQogCWlmIChhZ2dfaW50ZXJ2 YWwgPiAwKQ0KIAl7DQorCQlwZ190aW1lX3VzZWNfdAluZXh0Ow0KKw0KIAkJ LyoNCiAJCSAqIExvb3AgdW50aWwgd2UgcmVhY2ggdGhlIGludGVydmFsIG9m IHRoZSBjdXJyZW50IG1vbWVudCwgYW5kIHByaW50DQogCQkgKiBhbnkgZW1w dHkgaW50ZXJ2YWxzIGluIGJldHdlZW4gKHRoaXMgbWF5IGhhcHBlbiB3aXRo IHZlcnkgbG93IHRwcywNCiAJCSAqIGUuZy4gLS1yYXRlPTAuMSkuDQogCQkg Ki8NCi0NCi0JCXdoaWxlIChhZ2ctPnN0YXJ0X3RpbWUgKyBhZ2dfaW50ZXJ2 YWwgPD0gbm93KQ0KKwkJd2hpbGUgKChuZXh0ID0gYWdnLT5zdGFydF90aW1l ICsgYWdnX2ludGVydmFsICogSU5UNjRDT05TVCgxMDAwMDAwKSkgPD0gbm93 KQ0KIAkJew0KLQkJCS8qIHByaW50IGFnZ3JlZ2F0ZWQgcmVwb3J0IHRvIGxv Z2ZpbGUgKi8NCi0JCQlmcHJpbnRmKGxvZ2ZpbGUsIElOVDY0X0ZPUk1BVCAi ICIgSU5UNjRfRk9STUFUICIgJS4wZiAlLjBmICUuMGYgJS4wZiIsDQotCQkJ CQlhZ2ctPnN0YXJ0X3RpbWUsDQotCQkJCQlhZ2ctPmNudCwNCi0JCQkJCWFn Zy0+bGF0ZW5jeS5zdW0sDQotCQkJCQlhZ2ctPmxhdGVuY3kuc3VtMiwNCi0J CQkJCWFnZy0+bGF0ZW5jeS5taW4sDQotCQkJCQlhZ2ctPmxhdGVuY3kubWF4 KTsNCi0JCQlpZiAodGhyb3R0bGVfZGVsYXkpDQotCQkJew0KLQkJCQlmcHJp bnRmKGxvZ2ZpbGUsICIgJS4wZiAlLjBmICUuMGYgJS4wZiIsDQotCQkJCQkJ YWdnLT5sYWcuc3VtLA0KLQkJCQkJCWFnZy0+bGFnLnN1bTIsDQotCQkJCQkJ YWdnLT5sYWcubWluLA0KLQkJCQkJCWFnZy0+bGFnLm1heCk7DQotCQkJCWlm IChsYXRlbmN5X2xpbWl0KQ0KLQkJCQkJZnByaW50Zihsb2dmaWxlLCAiICIg SU5UNjRfRk9STUFULCBhZ2ctPnNraXBwZWQpOw0KLQkJCX0NCi0JCQlmcHV0 YygnXG4nLCBsb2dmaWxlKTsNCisJCQlsb2dBZ2cobG9nZmlsZSwgYWdnKTsN CiANCiAJCQkvKiByZXNldCBkYXRhIGFuZCBtb3ZlIHRvIG5leHQgaW50ZXJ2 YWwgKi8NCi0JCQlpbml0U3RhdHMoYWdnLCBhZ2ctPnN0YXJ0X3RpbWUgKyBh Z2dfaW50ZXJ2YWwpOw0KKwkJCWluaXRTdGF0cyhhZ2csIG5leHQpOw0KIAkJ fQ0KIA0KLQkJLyogYWNjdW11bGF0ZSB0aGUgY3VycmVudCB0cmFuc2FjdGlv biAqLw0KLQkJYWNjdW1TdGF0cyhhZ2csIHNraXBwZWQsIGxhdGVuY3ksIGxh Zyk7DQorCQlpZiAodHgpDQorCQkJLyogYWNjdW11bGF0ZSB0aGUgY3VycmVu dCB0cmFuc2FjdGlvbiAqLw0KKwkJCWFjY3VtU3RhdHMoYWdnLCBza2lwcGVk LCBsYXRlbmN5LCBsYWcpOw0KKwkJZWxzZQ0KKwkJCS8qIGZpbmFsIGNhbGwg dG8gc2hvdyB0aGUgbGFzdCBhZ2dyZWdhdGUgKi8NCisJCQlsb2dBZ2cobG9n ZmlsZSwgYWdnKTsNCiAJfQ0KIAllbHNlDQogCXsNCisJCS8qIHN3aXRjaCB0 byBlcG9jaCAqLw0KKwkJbm93ICs9IGVwb2NoX3NoaWZ0Ow0KKw0KKwkJLyog IXR4IG9ubHkgdXNlZCBmb3IgYWdncmVnYXRlZCBkYXRhICovDQorCQlBc3Nl cnQodHgpOw0KKw0KIAkJLyogbm8sIHByaW50IHJhdyB0cmFuc2FjdGlvbnMg Ki8NCiAJCWlmIChza2lwcGVkKQ0KIAkJCWZwcmludGYobG9nZmlsZSwgIiVk ICIgSU5UNjRfRk9STUFUICIgc2tpcHBlZCAlZCAiIElOVDY0X0ZPUk1BVCAi ICINCkBAIC0zODkwLDcgKzM5MjAsNyBAQCBwcm9jZXNzWGFjdFN0YXRzKFRT dGF0ZSAqdGhyZWFkLCBDU3RhdGUgKnN0LCBwZ190aW1lX3VzZWNfdCAqbm93 LA0KIAlzdC0+Y250Kys7DQogDQogCWlmICh1c2VfbG9nKQ0KLQkJZG9Mb2co dGhyZWFkLCBzdCwgYWdnLCBza2lwcGVkLCBsYXRlbmN5LCBsYWcpOw0KKwkJ ZG9Mb2codGhyZWFkLCBzdCwgdHJ1ZSwgYWdnLCBza2lwcGVkLCBsYXRlbmN5 LCBsYWcpOw0KIA0KIAkvKiBYWFggY291bGQgdXNlIGEgbXV0ZXggaGVyZSwg YnV0IHdlIGNob29zZSBub3QgdG8gKi8NCiAJaWYgKHBlcl9zY3JpcHRfc3Rh dHMpDQpAQCAtNTQ1Niw3ICs1NDg2LDcgQEAgcHJpbnRQcm9ncmVzc1JlcG9y dChUU3RhdGUgKnRocmVhZHMsIGludDY0IHRlc3Rfc3RhcnQsIHBnX3RpbWVf dXNlY190IG5vdywNCiANCiAJaWYgKHByb2dyZXNzX3RpbWVzdGFtcCkNCiAJ ew0KLQkJc25wcmludGYodGJ1Ziwgc2l6ZW9mKHRidWYpLCAiJS4zZiBzIiwg UEdfVElNRV9HRVRfRE9VQkxFKG5vdykpOw0KKwkJc25wcmludGYodGJ1Ziwg c2l6ZW9mKHRidWYpLCAiJS4zZiBzIiwgUEdfVElNRV9HRVRfRE9VQkxFKG5v dyArIGVwb2NoX3NoaWZ0KSk7DQogCX0NCiAJZWxzZQ0KIAl7DQpAQCAtNTgw Niw2ICs1ODM2LDExIEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0K IAljaGFyCSAgICplbnY7DQogDQogCWludAkJCWV4aXRfY29kZSA9IDA7DQor CXN0cnVjdCB0aW1ldmFsIHR2Ow0KKw0KKwkvKiByZWNvcmQgc2hpZnQgYmV0 d2VlbiBlcG9jaCBhbmQgbm93KCkgKi8NCisJZ2V0dGltZW9mZGF5KCZ0diwg TlVMTCk7DQorCWVwb2NoX3NoaWZ0ID0gdHYudHZfc2VjICogMTAwMDAwMCAr IHR2LnR2X3VzZWMgLSBwZ190aW1lX25vdygpOw0KIA0KIAlwZ19sb2dnaW5n X2luaXQoYXJndlswXSk7DQogCXByb2duYW1lID0gZ2V0X3Byb2duYW1lKGFy Z3ZbMF0pOw0KQEAgLTY4MjgsOCArNjg2Myw5IEBAIGRvbmU6DQogCQlpZiAo YWdnX2ludGVydmFsID4gMCkNCiAJCXsNCiAJCQkvKiBsb2cgYWdncmVnYXRl ZCBidXQgbm90IHlldCByZXBvcnRlZCB0cmFuc2FjdGlvbnMgKi8NCi0JCQlk b0xvZyh0aHJlYWQsIHN0YXRlLCAmYWdncywgZmFsc2UsIDAsIDApOw0KKwkJ CWRvTG9nKHRocmVhZCwgc3RhdGUsIGZhbHNlLCAmYWdncywgZmFsc2UsIDAu MCwgMC4wKTsNCiAJCX0NCisNCiAJCWZjbG9zZSh0aHJlYWQtPmxvZ2ZpbGUp Ow0KIAkJdGhyZWFkLT5sb2dmaWxlID0gTlVMTDsNCiAJfQ0KZGlmZiAtLWdp dCBhL3NyYy9iaW4vcGdiZW5jaC90LzAwMV9wZ2JlbmNoX3dpdGhfc2VydmVy LnBsIGIvc3JjL2Jpbi9wZ2JlbmNoL3QvMDAxX3BnYmVuY2hfd2l0aF9zZXJ2 ZXIucGwNCmluZGV4IDkyMzIwM2VhNTEuLjJlMzRjMWFiZjYgMTAwNjQ0DQot LS0gYS9zcmMvYmluL3BnYmVuY2gvdC8wMDFfcGdiZW5jaF93aXRoX3NlcnZl ci5wbA0KKysrIGIvc3JjL2Jpbi9wZ2JlbmNoL3QvMDAxX3BnYmVuY2hfd2l0 aF9zZXJ2ZXIucGwNCkBAIC04LDYgKzgsNyBAQCB1c2UgUG9zdGdyZXNOb2Rl Ow0KIHVzZSBUZXN0TGliOw0KIHVzZSBUZXN0OjpNb3JlOw0KIHVzZSBDb25m aWc7DQordXNlIFRpbWU6OkhpUmVzIHF3KCB0aW1lICk7DQogDQogIyBzdGFy dCBhIHBnYmVuY2ggc3BlY2lmaWMgc2VydmVyDQogbXkgJG5vZGUgPSBnZXRf bmV3X25vZGUoJ21haW4nKTsNCkBAIC01NCwxMiArNTUsMTQgQEAgc3ViIHBn YmVuY2gNCiANCiAJcHVzaCBAY21kLCBAYXJnczsNCiANCisJbXkgJHN0YXJ0 ID0gdGltZSgpOw0KIAkkbm9kZS0+Y29tbWFuZF9jaGVja3NfYWxsKFxAY21k LCAkc3RhdCwgJG91dCwgJGVyciwgJG5hbWUpOw0KKwlteSAkc3RvcCA9IHRp bWUoKTsNCiANCiAJIyBjbGVhbnVwPw0KIAkjdW5saW5rIEBmaWxlbmFtZXMg b3IgZGllICJjYW5ub3QgdW5saW5rIGZpbGVzIChAZmlsZW5hbWVzKTogJCEi Ow0KIA0KLQlyZXR1cm47DQorCXJldHVybiAkc3RvcCAtICRzdGFydDsNCiB9 DQogDQogIyB0YWJsZXNwYWNlIGZvciB0ZXN0aW5nLCBiZWNhdXNlIHBhcnRp dGlvbmVkIHRhYmxlcyBjYW5ub3QgdXNlIHBnX2RlZmF1bHQNCkBAIC0xMTcz LDcgKzExNzYsMTQgQEAgc3ViIGxpc3RfZmlsZXMNCiAJcmV0dXJuIG1hcCB7 ICRkaXIgLiAnLycgLiAkXyB9IEBmaWxlczsNCiB9DQogDQorIw0KICMgY2hl Y2sgbG9nIGNvbnRlbnRzIGFuZCBjbGVhbnVwDQorIyAgICRkaXI6IGRpcmVj dG9yeSBob2xkaW5nIGxvZ3MNCisjICAgJHByZWZpeDogZmlsZSBwcmVmaXgg Zm9yIHBlci10aHJlYWQgbG9ncw0KKyMgICAkbmI6IG51bWJlciBvZiBleHBl Y3RlZCBmaWxlcw0KKyMgICAkbWluLyRtYXg6IG1pbmltdW0vbWF4aW11bSBu dW1iZXIgb2YgbGluZXMgaW4gbG9nIGZpbGVzDQorIyAgICRyZTogcmVndWxh ciBleHByZXNzaW9uIGVhY2ggbGluZSBzaG91bGQgbWF0Y2gNCisjDQogc3Vi IGNoZWNrX3BnYmVuY2hfbG9ncw0KIHsNCiAJbG9jYWwgJFRlc3Q6OkJ1aWxk ZXI6OkxldmVsID0gJFRlc3Q6OkJ1aWxkZXI6OkxldmVsICsgMTsNCkBAIC0x MTgyLDcgKzExOTIsNyBAQCBzdWIgY2hlY2tfcGdiZW5jaF9sb2dzDQogDQog CSMgJHByZWZpeCBpcyBzaW1wbGUgZW5vdWdoLCB0aHVzIGRvZXMgbm90IG5l ZWQgZXNjYXBpbmcNCiAJbXkgQGxvZ3MgPSBsaXN0X2ZpbGVzKCRkaXIsIHFy e14kcHJlZml4XC4uKiR9KTsNCi0Jb2soQGxvZ3MgPT0gJG5iLCAibnVtYmVy IG9mIGxvZyBmaWxlcyIpOw0KKwlvayhAbG9ncyA9PSAkbmIsICJudW1iZXIg b2YgbG9nIGZpbGVzIChAbG9ncykiKTsNCiAJb2soZ3JlcCgvXC8kcHJlZml4 XC5cZCsoXC5cZCspPyQvLCBAbG9ncykgPT0gJG5iLCAiZmlsZSBuYW1lIGZv cm1hdCIpOw0KIA0KIAlteSAkbG9nX251bWJlciA9IDA7DQpAQCAtMTIwNSw2 ICsxMjE1LDM2IEBAIHN1YiBjaGVja19wZ2JlbmNoX2xvZ3MNCiANCiBteSAk YmRpciA9ICRub2RlLT5iYXNlZGlyOw0KIA0KKyMgbm90ZTogdGhpcyB0ZXN0 IGlzIHRpbWUgc2Vuc2l0aXZlLCBhbmQgbWF5IGZhaWwgb24gYSB2ZXJ5DQor IyAgICAgICBsb2FkZWQgaG9zdC4NCisjIG5vdGU6IC0tcHJvZ3Jlc3MtdGlt ZXN0YW1wIGlzIG5vdCB0ZXN0ZWQNCitteSAkZGVsYXkgPSBwZ2JlbmNoKA0K KwknLVQgMiAtUCAxIC1sIC0tYWdncmVnYXRlLWludGVydmFsPTEgLVMgLWIg c2VAMicNCisJLiAnIC0tcmF0ZT0yMCAtLWxhdGVuY3ktbGltaXQ9MTAwMCAt aiAnIC4gJG50aHJlYWRzDQorCS4gJyAtYyAzIC1yJywNCisJMCwNCisJWyAg IHFye3R5cGU6IG11bHRpcGxlfSwNCisJCXFye2NsaWVudHM6IDN9LA0KKwkJ cXJ7dGhyZWFkczogJG50aHJlYWRzfSwNCisJCXFye2R1cmF0aW9uOiAyIHN9 LA0KKwkJcXJ7c2NyaXB0IDE6IC4qIHNlbGVjdCBvbmx5fSwNCisJCXFye3Nj cmlwdCAyOiAuKiBzZWxlY3Qgb25seX0sDQorCQlxcntzdGF0ZW1lbnQgbGF0 ZW5jaWVzIGluIG1pbGxpc2Vjb25kc30sDQorCQlxcntGUk9NIHBnYmVuY2hf YWNjb3VudHN9IF0sDQorCVsgcXJ7dmFjdXVtfSwgcXJ7cHJvZ3Jlc3M6IDFc Yn0gXSwNCisJJ3BnYmVuY2ggcHJvZ3Jlc3MnLCB1bmRlZiwNCisJIi0tbG9n LXByZWZpeD0kYmRpci8wMDFfcGdiZW5jaF9sb2dfMSIpOw0KKw0KKyMgY29v bCBjaGVjayB0aGF0IHdlIGFyZSBhcm91bmQgMiBzZWNvbmRzDQorIyBUaGUg cmF0ZSBtYXkgcmVzdWx0cyBpbiBhbiB1bmx1Y2t5IHNjaGVkdWxlIHdoaWNo IHRyaWdnZXJzDQorIyBhbiBlYXJseSBleGl0LCBoZW5jZSB0aGUgbG9vc2Ug Ym91bmQuDQorb2soMC4wIDwgJGRlbGF5ICYmICRkZWxheSA8IDQuMCwgIi1U IDIgcnVuIGFyb3VuZCAyIHNlY29uZHMiKTsNCisNCisjICRudGhyZWFkcyB0 aHJlYWRzLCAyIHNlY29uZHMsIGJ1dCBkdWUgdG8gdGltaW5nIGltcHJlY2lz aW9uIHdlIG1pZ2h0IGdldA0KKyMgb25seSAxIG9yIGFzIG1hbnkgYXMgMyBw cm9ncmVzcyByZXBvcnRzIHBlciB0aHJlYWQuDQorY2hlY2tfcGdiZW5jaF9s b2dzKCRiZGlyLCAnMDAxX3BnYmVuY2hfbG9nXzEnLCAkbnRocmVhZHMsIDEs IDMsDQorCXFye15cZHsxMCx9IFxkezEsMn0gXGQrIFxkKyBcZCsgXGQrIFxk KyBcZCsgXGQrIFxkKyBcZCskfSk7DQorDQogIyB3aXRoIHNhbXBsaW5nIHJh dGUNCiBwZ2JlbmNoKA0KIAkiLW4gLVMgLXQgNTAgLWMgMiAtLWxvZyAtLXNh bXBsaW5nLXJhdGU9MC41IiwgMCwNCg== --2056645051-870502544-1624356405=:883117--