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 1vLK1Z-00CP3E-0P for pgpool-hackers@arkaria.postgresql.org; Tue, 18 Nov 2025 11:37:29 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vLK1W-005qBM-2O for pgpool-hackers@arkaria.postgresql.org; Tue, 18 Nov 2025 11:37:27 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vLK1W-005qBE-0v for pgpool-hackers@lists.postgresql.org; Tue, 18 Nov 2025 11:37:26 +0000 Received: from mail-yw1-x112d.google.com ([2607:f8b0:4864:20::112d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vLK1S-0009gF-1m for pgpool-hackers@lists.postgresql.org; Tue, 18 Nov 2025 11:37:25 +0000 Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-787d5555274so53418157b3.1 for ; Tue, 18 Nov 2025 03:37:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tailorbrands.com; s=google; t=1763465842; x=1764070642; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=IXgKPF0RuuisSrqgn1LIy4BQTm3OX1FLunZ7J5G4zj8=; b=UuniHyuSiy9ViwdY1W/agBgU5+n9M/5Qu2PlCtu3T0jWfe1TjL8a3Z8VsZ9R6nM0Q1 QlL4ZrhHA8VzrGGy5SvvODSTuGCxdzetXDbwxubUC5wncpqbFlb/J+d50e8LYvDyfAVD fsA+Qx5yo8+EPEbb3z2gW3R0WVljYn9NKrXqWaEs/6SM3poQ0NAU7sdBXMmMhRJ305Jd UJa0GHY6Pks3cFoWQ5uqybAOIAE3WYIUeRUJUFl72r56PToqYaskyn8TbMiDC2+B/KIw K93A4XrrLxSwSvA5FThTXHQGgW9KBay0uLqh7HE3ZnhUNunFCpr7CP3GwqcMyGb+yJYM AyQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763465842; x=1764070642; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=IXgKPF0RuuisSrqgn1LIy4BQTm3OX1FLunZ7J5G4zj8=; b=W1QZKmdlnx9k9bp0miLX5M6uibE3pEKiOs9tRr/QXfGpAWgURZLx0WCcE8ixYH8kaZ 5ZkTIJPRrUVd7+dsgqQD7zaMpLrBYEGd6z9rYaNmdileuquNX1V9xcOkigpHRwAg+x3j Z5GaUXsPt0BP71KVuXnukhEjViuWepr8TPhm60Z1AQmnicRl7R6GeEURXzS1Vft1Ct41 6qfXKmdYtUytEE+zjIm5wZEdnwQHIEd8/EdVe7maUHRRweKvtGLCErHYUrvN473NTDBX kpsmiGFwgI7N48A26LRSXlrKI9GXPfeZ+5DAlXo7kwikxaButTY2+nEy9fwG7i58nlt4 U/jQ== X-Gm-Message-State: AOJu0Yxsf6tw2dAVv4OMi4EyudG7apYYxMtN65N2TIHvwNQBSPlwr4QT 8UJD4CrEbl9ZEVnBclU7UJfPKmBG5e/iuaLV1AgJpfZPJWuahy0RBLDXmMGVkOdjvdWhsm4unrd Bo08DUdonLGS6B5g794MlGdQj6g7iv7yKV25aKJGwOw== X-Gm-Gg: ASbGncvYA573RnFv26pEhb93DmOaqEII+oC7GFcFTF//pV/J8SfiVcXF2sPv78vxNfp Rq0xsfQzvbXWtZ4/aNcc3FlAIn+swZ2w6ISzyRFSyB47gINsmSUIjWB9PwKb2vyi2F4rzk3Gpnn WcHa3Ej7xpa2pd5eyar35oAYEsjSGlHHgj7NObsipjt/jFpJtOhzap2gfF4MMJPkJOEv4Q0BFTS Z6Q7wJNAQJhA43lM8kdew8lDDayxo5DhRPL8eoBRCovWTgI0DV5I0KVDkSH82SCjKMF80eQALLO SebloPNpW9j2NBQlcZ1G27dDQKp18jcJ8FO6z+c1ND8CjrUka49QKlNtxb6pPoeskvUm X-Google-Smtp-Source: AGHT+IHSGB9vvxNRKLBhwE3Rg2G6pnG8ous0vUwiHg6kAHsHlE06h+8aLaJQEkCJxXG2VZ75yC7T7RR19u/8crH3XQo= X-Received: by 2002:a05:690e:d02:b0:641:f347:5b57 with SMTP id 956f58d0204a3-641f3475ba1mr10446772d50.71.1763465842014; Tue, 18 Nov 2025 03:37:22 -0800 (PST) MIME-Version: 1.0 References: <20251103.160534.1221876310577228273.ishii@postgresql.org> <20251106.182419.823615469104357272.ishii@postgresql.org> In-Reply-To: <20251106.182419.823615469104357272.ishii@postgresql.org> From: Nadav Shatz Date: Tue, 18 Nov 2025 13:37:10 +0200 X-Gm-Features: AWmQ_bkkOwVO2rn5g35io1T1BbC7qR80eUyrW2diXq7t9DXdnbCLmMOUWEBQTAo Message-ID: Subject: Re: Proposal: recent access based routing for primary-replica setups To: Tatsuo Ishii Cc: pgpool-hackers@lists.postgresql.org Content-Type: multipart/mixed; boundary="000000000000168efc0643dce380" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000168efc0643dce380 Content-Type: multipart/alternative; boundary="000000000000168efa0643dce37e" --000000000000168efa0643dce37e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Tatsuo, Please see attached an updated version. thank you On Fri, Nov 7, 2025 at 2:07=E2=80=AFAM Tatsuo Ishii = wrote: > > Sorry for that - thanks for the patch. > > > > Please find attached a new version > > Thanks for the new version. Unfortunately this time regression test > fails at: > > > Waiting for command timeout... > > fail: command timeout not detected > > Attached is the pgpool.log. > > Best regards, > -- > Tatsuo Ishii > SRA OSS K.K. > English: http://www.sraoss.co.jp/index_en/ > Japanese:http://www.sraoss.co.jp > > > On Mon, Nov 3, 2025 at 9:05=E2=80=AFAM Tatsuo Ishii > wrote: > > > >> > thanks and sorry for the issues, please find attached updated versio= n. > >> > >> No problem. > >> > >> This time the patch applies fine, no compiler warnings. However, > >> regression test did not passed here (on Ubuntu 24 LTS if this > >> matters). So I looked into > >> src/test/regression/tests/041.external_replication_delay/test.sh a > >> little bit and apply attached patch (test.sh.patch). It moved forward > >> partially but failed at: > >> > >> fail: command execution failure not detected > >> > >> Please find attached > >> > src/test/regression/tests/041.external_replication_delay/testdir/pgpool.l= og > >> and src/test/regression/log/041.external_replication_delay. > >> > >> Best regards, > >> -- > >> Tatsuo Ishii > >> SRA OSS K.K. > >> English: http://www.sraoss.co.jp/index_en/ > >> Japanese:http://www.sraoss.co.jp > >> > > > > > > -- > > Nadav Shatz > > Tailor Brands | CTO > --=20 Nadav Shatz Tailor Brands | CTO --000000000000168efa0643dce37e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Tatsuo,

Please see attached an updat= ed version.

thank you

O= n Fri, Nov 7, 2025 at 2:07=E2=80=AFAM Tatsuo Ishii <ishii@postgresql.org> wrote:
> Sorry for that - thanks for th= e patch.
>
> Please find attached a new version

Thanks for the new version. Unfortunately this time regression test
fails at:

> Waiting for command timeout...
> fail: command timeout not detected

Attached is the pgpool.log.

Best regards,
--
Tatsuo Ishii
SRA OSS K.K.
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp

> On Mon, Nov 3, 2025 at 9:05=E2=80=AFAM Tatsuo Ishii <ishii@postgresql.org> wr= ote:
>
>> > thanks and sorry for the issues, please find attached updated= version.
>>
>> No problem.
>>
>> This time the patch applies fine, no compiler warnings.=C2=A0 Howe= ver,
>> regression test did not passed here (on Ubuntu 24 LTS if this
>> matters).=C2=A0 So I looked into
>> src/test/regression/tests/041.external_replication_delay/test.sh a=
>> little bit and apply attached patch (test.sh.patch). It moved forw= ard
>> partially but failed at:
>>
>> fail: command execution failure not detected
>>
>> Please find attached
>> src/test/regression/tests/041.external_replication_delay/testdir/p= gpool.log
>> and src/test/regression/log/041.external_replication_delay.
>>
>> Best regards,
>> --
>> Tatsuo Ishii
>> SRA OSS K.K.
>> English: http://www.sraoss.co.jp/index_en/
>> Japanese:http://www.sraoss.co.jp
>>
>
>
> --
> Nadav Shatz
> Tailor Brands | CTO


--
Nadav Shatz
<= font color=3D"#000000">Tailor Brands=C2=A0| CTO
--000000000000168efa0643dce37e-- --000000000000168efc0643dce380 Content-Type: application/octet-stream; name="0001-Fix-multiple-issues-in-external-replication-delay-fe.patch" Content-Disposition: attachment; filename="0001-Fix-multiple-issues-in-external-replication-delay-fe.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mi4i0r970 RnJvbSBiNDNjMzgyOTNlNjIxNjNhYzYzNzFjYTY3MTg3NGQ3MGFhNDMyZTNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWRhdiBTaGF0eiA8bmFkYXZAdGFpbG9yYnJhbmRzLmNvbT4K RGF0ZTogVHVlLCAxOCBOb3YgMjAyNSAxMzoxOTowMiArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIEZp eCBtdWx0aXBsZSBpc3N1ZXMgaW4gZXh0ZXJuYWwgcmVwbGljYXRpb24gZGVsYXkgZmVhdHVyZQoK VGhpcyBjb21taXQgYWRkcmVzc2VzIHNldmVyYWwgY3JpdGljYWwgYnVncyBhbmQgY29kZSBxdWFs aXR5IGlzc3VlcwppbiB0aGUgZXh0ZXJuYWwgcmVwbGljYXRpb24gZGVsYXkgY29tbWFuZCBpbXBs ZW1lbnRhdGlvbjoKCk1lbW9yeSBTYWZldHk6Ci0gSW5pdGlhbGl6ZSBjb21tYW5kIHBvaW50ZXIg dG8gTlVMTCB0byBwcmV2ZW50IHVuZGVmaW5lZCBiZWhhdmlvcgogIHdoZW4gZnJlZWluZyB1bmlu aXRpYWxpemVkIG1lbW9yeQoKU2VjdXJpdHk6Ci0gQWRkIGhvc3RuYW1lIHZhbGlkYXRpb24gdG8g ZGV0ZWN0IHNoZWxsIG1ldGFjaGFyYWN0ZXJzCi0gV2FybiBhYm91dCBwb3RlbnRpYWxseSBkYW5n ZXJvdXMgY2hhcmFjdGVycyBpbiBob3N0bmFtZXMKLSBDaGFuZ2VkIHdhcm5pbmcgbGV2ZWwgZnJv bSBXQVJOSU5HIHRvIExPRyB0byBhdm9pZCBleGNlc3NpdmUgYWxlcnRzCgpTaWduYWwgSGFuZGxl ciBSYWNlIENvbmRpdGlvbnM6Ci0gUmVvcmRlciBzaWduYWwoU0lHQUxSTSwgU0lHX0RGTCkgYmVm b3JlIGFsYXJtKDApIGluIGFsbCBlcnJvciBwYXRocwotIFByZXZlbnRzIHJhY2UgY29uZGl0aW9u IHdoZXJlIGFsYXJtIGNvdWxkIHRyaWdnZXIgYWZ0ZXIgaGFuZGxlciByZW1vdmFsCi0gRml4ZXM6 IHBvcGVuIGZhaWx1cmUsIGZnZXRzIGZhaWx1cmUsIGFuZCBleGNlcHRpb24gaGFuZGxlciBwYXRo cwoKUHJpbWFyeSBOb2RlIFJhY2UgQ29uZGl0aW9uOgotIENhcHR1cmUgUkVBTF9QUklNQVJZX05P REVfSUQgaW50byBsb2NhbCB2YXJpYWJsZSBhdCBmdW5jdGlvbiBzdGFydAotIFVzZSBjYXB0dXJl ZCB2YWx1ZSBjb25zaXN0ZW50bHkgdGhyb3VnaG91dCBmdW5jdGlvbiBleGVjdXRpb24KLSBQcmV2 ZW50cyBpbmNvbnNpc3RlbmNpZXMgaWYgcHJpbWFyeSBjaGFuZ2VzIGR1cmluZyBleGVjdXRpb24K Ck91dHB1dCBQYXJzaW5nIFJvYnVzdG5lc3M6Ci0gRW5oYW5jZWQgdmFsaWRhdGlvbiBmb3IgZXh0 ZXJuYWwgY29tbWFuZCBvdXRwdXQKLSBQcm92aWRlIHNwZWNpZmljIHdhcm5pbmdzIGZvcjogbm8g b3V0cHV0LCB0b28gZmV3IHZhbHVlcywgdG9vIG1hbnkgdmFsdWVzCi0gSW1wcm92ZWQgZXJyb3Ig bWVzc2FnZXMgd2l0aCBoZWxwZnVsIGhpbnRzIGZvciBvcGVyYXRvcnMKCkNvZGUgUXVhbGl0eToK LSBSZW1vdmUgdW51c2VkIHJlcGxpY2FfaWR4IHZhcmlhYmxlIHRvIGVsaW1pbmF0ZSBjb21waWxl ciB3YXJuaW5ncwotIEltcHJvdmUgY29kZSByZWFkYWJpbGl0eSBhbmQgbWFpbnRhaW5hYmlsaXR5 CgpBbGwgY2hhbmdlcyBoYXZlIGJlZW4gdGVzdGVkIGluIGEgRG9ja2VyLWJhc2VkIGludGVncmF0 aW9uIGVudmlyb25tZW50CndpdGggUG9zdGdyZVNRTCBwcmltYXJ5L3JlcGxpY2Egc2V0dXAgYW5k IGNvbmZpcm1lZCB3b3JraW5nIGNvcnJlY3RseS4KLS0tCiBzcmMvc3RyZWFtaW5nX3JlcGxpY2F0 aW9uL3Bvb2xfd29ya2VyX2NoaWxkLmMgfCA2OCArKysrKysrKysrKysrLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjL3N0cmVhbWluZ19yZXBsaWNhdGlvbi9wb29sX3dvcmtlcl9jaGlsZC5jIGIvc3JjL3N0cmVh bWluZ19yZXBsaWNhdGlvbi9wb29sX3dvcmtlcl9jaGlsZC5jCmluZGV4IDgxZGM4MjkyMi4uMWFl MjkwZTI4IDEwMDY0NAotLS0gYS9zcmMvc3RyZWFtaW5nX3JlcGxpY2F0aW9uL3Bvb2xfd29ya2Vy X2NoaWxkLmMKKysrIGIvc3JjL3N0cmVhbWluZ19yZXBsaWNhdGlvbi9wb29sX3dvcmtlcl9jaGls ZC5jCkBAIC02OTQsMTEgKzY5NCwxMCBAQCBzdGF0aWMgdm9pZAogY2hlY2tfcmVwbGljYXRpb25f dGltZV9sYWdfd2l0aF9jbWQodm9pZCkKIHsKIAlGSUxFCQkgICAqZnA7Ci0JY2hhcgkJICAgKmNv bW1hbmQ7CisJY2hhcgkJICAgKmNvbW1hbmQgPSBOVUxMOwogCWNoYXIJCSAgICpsaW5lOwogCWNo YXIJCSAgICp0b2tlbjsKIAljaGFyCQkgICAqc2F2ZXB0cjsKLQlpbnQJCQkJcmVwbGljYV9pZHg7 CiAJaW50CQkJCW51bV9yZXBsaWNhczsKIAlkb3VibGUJCQlkZWxheV9tczsKIAl1aW50NjQJCQlk ZWxheTsKQEAgLTcyNCw2ICs3MjMsOSBAQCBjaGVja19yZXBsaWNhdGlvbl90aW1lX2xhZ193aXRo X2NtZCh2b2lkKQogCQlyZXR1cm47CiAJfQogCisJLyogQ2FwdHVyZSBwcmltYXJ5IG5vZGUgSUQg dG8gYXZvaWQgcmFjZSBjb25kaXRpb25zIGR1cmluZyBleGVjdXRpb24gKi8KKwlpbnQgcHJpbWFy eV9ub2RlX2lkID0gUkVBTF9QUklNQVJZX05PREVfSUQ7CisKIAlpZiAoIXBvb2xfY29uZmlnLT5y ZXBsaWNhdGlvbl9kZWxheV9zb3VyY2VfY21kIHx8CiAJCXN0cmxlbihwb29sX2NvbmZpZy0+cmVw bGljYXRpb25fZGVsYXlfc291cmNlX2NtZCkgPT0gMCkKIAl7CkBAIC03NTcsNyArNzU5LDcgQEAg Y2hlY2tfcmVwbGljYXRpb25fdGltZV9sYWdfd2l0aF9jbWQodm9pZCkKIAkJLyogQ2FsY3VsYXRl IHRvdGFsIGNvbW1hbmQgbGVuZ3RoIGluY2x1ZGluZyBzcGFjZS1zZXBhcmF0ZWQgcmVwbGljYSBp ZGVudGlmaWVycyAqLwogCQlmb3IgKGludCBpID0gMDsgaSA8IE5VTV9CQUNLRU5EUzsgaSsrKQog CQl7Ci0JCQlpZiAoaSA9PSBSRUFMX1BSSU1BUllfTk9ERV9JRCkKKwkJCWlmIChpID09IHByaW1h cnlfbm9kZV9pZCkKIAkJCQljb250aW51ZTsgLyogU2tpcCBwcmltYXJ5IG5vZGUgKi8KIAogCQkJ Y2hhciAqaWRlbnQgPSBidWlsZF9pbnN0YW5jZV9pZGVudGlmaWVyX2Zvcl9ub2RlKGkpOwpAQCAt NzcxLDcgKzc3Myw3IEBAIGNoZWNrX3JlcGxpY2F0aW9uX3RpbWVfbGFnX3dpdGhfY21kKHZvaWQp CiAJCS8qIEFwcGVuZCByZXBsaWNhIGlkZW50aWZpZXJzICovCiAJCWZvciAoaW50IGkgPSAwOyBp IDwgTlVNX0JBQ0tFTkRTOyBpKyspCiAJCXsKLQkJCWlmIChpID09IFJFQUxfUFJJTUFSWV9OT0RF X0lEKQorCQkJaWYgKGkgPT0gcHJpbWFyeV9ub2RlX2lkKQogCQkJCWNvbnRpbnVlOyAvKiBTa2lw IHByaW1hcnkgbm9kZSAqLwogCiAJCQljaGFyICppZGVudCA9IGJ1aWxkX2luc3RhbmNlX2lkZW50 aWZpZXJfZm9yX25vZGUoaSk7CkBAIC03OTEsOCArNzkzLDkgQEAgY2hlY2tfcmVwbGljYXRpb25f dGltZV9sYWdfd2l0aF9jbWQodm9pZCkKIAkJZnAgPSBwb3Blbihjb21tYW5kLCAiciIpOwogCQlp ZiAoZnAgPT0gTlVMTCkKIAkJewotCQkJYWxhcm0oMCk7IC8qIENhbmNlbCBhbGFybSAqLworCQkJ LyogQ2FuY2VsIHRpbWVvdXQ6IHJlc3RvcmUgc2lnbmFsIGhhbmRsZXIgZmlyc3QgdG8gYXZvaWQg cmFjZSBjb25kaXRpb24gKi8KIAkJCXNpZ25hbChTSUdBTFJNLCBTSUdfREZMKTsKKwkJCWFsYXJt KDApOwogCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJKGVycm1zZygiZmFpbGVkIHRvIGV4ZWN1dGUg cmVwbGljYXRpb24gZGVsYXkgY29tbWFuZDogJXMiLCBjb21tYW5kKSwKIAkJCQkJIGVycmRldGFp bCgicG9wZW4gZmFpbGVkOiAlbSIpKSk7CkBAIC04MDIsOCArODA1LDkgQEAgY2hlY2tfcmVwbGlj YXRpb25fdGltZV9sYWdfd2l0aF9jbWQodm9pZCkKIAkJewogCQkJaW50IHBjbG9zZV9yZXN1bHQg PSBwY2xvc2UoZnApOwogCQkJZnAgPSBOVUxMOwotCQkJYWxhcm0oMCk7IC8qIENhbmNlbCBhbGFy bSAqLworCQkJLyogQ2FuY2VsIHRpbWVvdXQ6IHJlc3RvcmUgc2lnbmFsIGhhbmRsZXIgZmlyc3Qg dG8gYXZvaWQgcmFjZSBjb25kaXRpb24gKi8KIAkJCXNpZ25hbChTSUdBTFJNLCBTSUdfREZMKTsK KwkJCWFsYXJtKDApOwogCiAJCQlpZiAoY29tbWFuZF90aW1lb3V0X29jY3VycmVkKQogCQkJewpA QCAtODIwLDggKzgyNCw5IEBAIGNoZWNrX3JlcGxpY2F0aW9uX3RpbWVfbGFnX3dpdGhfY21kKHZv aWQpCiAJCQl9CiAJCX0KIAotCQlhbGFybSgwKTsgLyogQ2FuY2VsIGFsYXJtICovCisJCS8qIENh bmNlbCB0aW1lb3V0OiByZXN0b3JlIHNpZ25hbCBoYW5kbGVyIGZpcnN0IHRvIGF2b2lkIHJhY2Ug Y29uZGl0aW9uICovCiAJCXNpZ25hbChTSUdBTFJNLCBTSUdfREZMKTsKKwkJYWxhcm0oMCk7CiAK IAkJLyogQ2hlY2sgaWYgb3V0cHV0IHdhcyB0cnVuY2F0ZWQgKi8KIAkJaWYgKHN0cmxlbihsaW5l KSA9PSBNQVhfQ01EX09VVFBVVCAtIDEgJiYgbGluZVtNQVhfQ01EX09VVFBVVCAtIDJdICE9ICdc bicpCkBAIC04MzYsNyArODQxLDcgQEAgY2hlY2tfcmVwbGljYXRpb25fdGltZV9sYWdfd2l0aF9j bWQodm9pZCkKIAkJY29tbWFuZCA9IE5VTEw7CiAKIAkJLyogU2V0IHByaW1hcnkgbm9kZSBkZWxh eSB0byAwICovCi0JCWJraW5mbyA9IHBvb2xfZ2V0X25vZGVfaW5mbyhSRUFMX1BSSU1BUllfTk9E RV9JRCk7CisJCWJraW5mbyA9IHBvb2xfZ2V0X25vZGVfaW5mbyhwcmltYXJ5X25vZGVfaWQpOwog CQlia2luZm8tPnN0YW5kYnlfZGVsYXkgPSAwOwogCQlia2luZm8tPnN0YW5kYnlfZGVsYXlfYnlf dGltZSA9IHRydWU7CiAKQEAgLTg1MywyOCArODU4LDQwIEBAIGNoZWNrX3JlcGxpY2F0aW9uX3Rp bWVfbGFnX3dpdGhfY21kKHZvaWQpCiAJCX0KIAkJcGZyZWUobGluZV9jb3B5KTsKIAotCQlpZiAo dG9rZW5fY291bnQgIT0gbnVtX3JlcGxpY2FzKQorCQkvKiBWYWxpZGF0ZSBvdXRwdXQgZm9ybWF0 ICovCisJCWlmICh0b2tlbl9jb3VudCA9PSAwKQorCQl7CisJCQllcmVwb3J0KFdBUk5JTkcsCisJ CQkJCShlcnJtc2coInJlcGxpY2F0aW9uIGRlbGF5IGNvbW1hbmQgcHJvZHVjZWQgbm8gb3V0cHV0 IiksCisJCQkJCSBlcnJoaW50KCJDb21tYW5kIHNob3VsZCBvdXRwdXQgZGVsYXkgdmFsdWVzIHNl cGFyYXRlZCBieSBzcGFjZXMsIG9uZSBwZXIgcmVwbGljYSBub2RlIikpKTsKKwkJfQorCQllbHNl IGlmICh0b2tlbl9jb3VudCA8IG51bV9yZXBsaWNhcykKIAkJewogCQkJZXJlcG9ydChXQVJOSU5H LAogCQkJCQkoZXJybXNnKCJyZXBsaWNhdGlvbiBkZWxheSBjb21tYW5kIHJldHVybmVkICVkIHZh bHVlcywgZXhwZWN0ZWQgJWQgKG9uZSBwZXIgcmVwbGljYSwgZXhjbHVkaW5nIHByaW1hcnkpIiwK IAkJCQkJCQl0b2tlbl9jb3VudCwgbnVtX3JlcGxpY2FzKSwKLQkJCQkJIGVycmhpbnQoIkNvbW1h bmQgc2hvdWxkIG91dHB1dCBvbmUgZGVsYXkgdmFsdWUgcGVyIHJlcGxpY2Egbm9kZSIpKSk7CisJ CQkJCSBlcnJoaW50KCJDb21tYW5kIHNob3VsZCBvdXRwdXQgb25lIGRlbGF5IHZhbHVlIHBlciBy ZXBsaWNhIG5vZGUuIE1pc3NpbmcgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwLiIpKSk7CisJ CX0KKwkJZWxzZSBpZiAodG9rZW5fY291bnQgPiBudW1fcmVwbGljYXMpCisJCXsKKwkJCWVyZXBv cnQoV0FSTklORywKKwkJCQkJKGVycm1zZygicmVwbGljYXRpb24gZGVsYXkgY29tbWFuZCByZXR1 cm5lZCAlZCB2YWx1ZXMsIGV4cGVjdGVkICVkIChvbmUgcGVyIHJlcGxpY2EsIGV4Y2x1ZGluZyBw cmltYXJ5KSIsCisJCQkJCQkJdG9rZW5fY291bnQsIG51bV9yZXBsaWNhcyksCisJCQkJCSBlcnJo aW50KCJDb21tYW5kIHNob3VsZCBvdXRwdXQgZXhhY3RseSBvbmUgZGVsYXkgdmFsdWUgcGVyIHJl cGxpY2Egbm9kZS4gRXh0cmEgdmFsdWVzIHdpbGwgYmUgaWdub3JlZC4iKSkpOwogCQl9CiAKLQkJ LyogUGFyc2UgdGhlIG91dHB1dCAtIG9uZSBkZWxheSB2YWx1ZSBwZXIgcmVwbGljYSBpbiBvcmRl ciAqLwotCQl0b2tlbiA9IHN0cnRva19yKGxpbmUsICIgXHRcbiIsICZzYXZlcHRyKTsKLQkJcmVw bGljYV9pZHggPSAwOworCS8qIFBhcnNlIHRoZSBvdXRwdXQgLSBvbmUgZGVsYXkgdmFsdWUgcGVy IHJlcGxpY2EgaW4gb3JkZXIgKi8KKwl0b2tlbiA9IHN0cnRva19yKGxpbmUsICIgXHRcbiIsICZz YXZlcHRyKTsKIAogCQlmb3IgKGludCBpID0gMDsgaSA8IE5VTV9CQUNLRU5EUyAmJiB0b2tlbiAh PSBOVUxMOyBpKyspCiAJCXsKLQkJCWlmIChpID09IFJFQUxfUFJJTUFSWV9OT0RFX0lEKQorCQkJ aWYgKGkgPT0gcHJpbWFyeV9ub2RlX2lkKQogCQkJCWNvbnRpbnVlOyAvKiBTa2lwIHByaW1hcnkg LSBpdCdzIG5vdCBpbiB0aGUgb3V0cHV0ICovCiAKIAkJCWlmICghVkFMSURfQkFDS0VORChpKSkK IAkJCXsKIAkJCQkvKiBTa2lwIGludmFsaWQgYmFja2VuZCBidXQgY29uc3VtZSB0b2tlbiAqLwog CQkJCXRva2VuID0gc3RydG9rX3IoTlVMTCwgIiBcdFxuIiwgJnNhdmVwdHIpOwotCQkJCXJlcGxp Y2FfaWR4Kys7CiAJCQkJY29udGludWU7CiAJCQl9CiAKQEAgLTkwMCw3ICs5MTcsNiBAQCBjaGVj a19yZXBsaWNhdGlvbl90aW1lX2xhZ193aXRoX2NtZCh2b2lkKQogCQkJCQkJCQlpKSkpOwogCQkJ CS8qIEtlZXAgcHJldmlvdXMgZGVsYXkgdmFsdWUsIGRvbid0IHRyaWdnZXIgZmFpbG92ZXIgKi8K IAkJCQl0b2tlbiA9IHN0cnRva19yKE5VTEwsICIgXHRcbiIsICZzYXZlcHRyKTsKLQkJCQlyZXBs aWNhX2lkeCsrOwogCQkJCWNvbnRpbnVlOwogCQkJfQogCkBAIC05MzMsMTkgKzk0OSwxOSBAQCBj aGVja19yZXBsaWNhdGlvbl90aW1lX2xhZ193aXRoX2NtZCh2b2lkKQogCQkJewogCQkJCWVyZXBv cnQoTE9HLAogCQkJCQkJKGVycm1zZygiUmVwbGljYXRpb24gb2Ygbm9kZTogJWQgaXMgYmVoaW5k ICUuM2Ygc2Vjb25kKHMpIGZyb20gdGhlIHByaW1hcnkgc2VydmVyIChub2RlOiAlZCkgW2V4dGVy bmFsIGNvbW1hbmRdIiwKLQkJCQkJCQkJaSwgZGVsYXlfbXMgLyAxMDAwLCBSRUFMX1BSSU1BUllf Tk9ERV9JRCkpKTsKKwkJCQkJCQkJaSwgZGVsYXlfbXMgLyAxMDAwLCBwcmltYXJ5X25vZGVfaWQp KSk7CiAJCQl9CiAKIAkJCXRva2VuID0gc3RydG9rX3IoTlVMTCwgIiBcdFxuIiwgJnNhdmVwdHIp OwotCQkJcmVwbGljYV9pZHgrKzsKIAkJfQogCiAJfQogCVBHX0NBVENIKCk7CiAJewogCQkvKiBD bGVhbnVwIGluIGNhc2Ugb2YgZXJyb3IgKi8KLQkJYWxhcm0oMCk7IC8qIENhbmNlbCBhbnkgcGVu ZGluZyBhbGFybSAqLworCQkvKiBDYW5jZWwgdGltZW91dDogcmVzdG9yZSBzaWduYWwgaGFuZGxl ciBmaXJzdCB0byBhdm9pZCByYWNlIGNvbmRpdGlvbiAqLwogCQlzaWduYWwoU0lHQUxSTSwgU0lH X0RGTCk7CisJCWFsYXJtKDApOwogCQlpZiAoZnApCiAJCXsKIAkJCXBjbG9zZShmcCk7CkBAIC05 NzYsNiArOTkyLDcgQEAgc3RhdGljIGNoYXIgKgogYnVpbGRfaW5zdGFuY2VfaWRlbnRpZmllcl9m b3Jfbm9kZShpbnQgbm9kZV9pZCkKIHsKIAlCYWNrZW5kSW5mbyAqYmkgPSBwb29sX2dldF9ub2Rl X2luZm8obm9kZV9pZCk7CisJY29uc3QgY2hhciAqaG9zdG5hbWU7CiAKIAlpZiAoIWJpIHx8IGJp LT5iYWNrZW5kX2hvc3RuYW1lWzBdID09ICdcMCcgfHwgYmktPmJhY2tlbmRfcG9ydCA8PSAwKQog CXsKQEAgLTk4Myw4ICsxMDAwLDE5IEBAIGJ1aWxkX2luc3RhbmNlX2lkZW50aWZpZXJfZm9yX25v ZGUoaW50IG5vZGVfaWQpCiAJCXJldHVybiBwc3ByaW50ZigidW5rbm93bl9ub2RlXyVkIiwgbm9k ZV9pZCk7CiAJfQogCisJaG9zdG5hbWUgPSBiaS0+YmFja2VuZF9ob3N0bmFtZTsKKworCS8qIFZh bGlkYXRlIGhvc3RuYW1lIGZvciBzZWN1cml0eSAtIGNoZWNrIGZvciBzaGVsbCBtZXRhY2hhcmFj dGVycyAqLworCWlmIChzdHJwYnJrKGhvc3RuYW1lLCAiJGBcXHw7Jjw+KClbXXt9XCJcJ1xuXHJc dCIpICE9IE5VTEwpCisJeworCQllcmVwb3J0KExPRywKKwkJCQkoZXJybXNnKCJob3N0bmFtZSBm b3Igbm9kZSAlZCBjb250YWlucyBwb3RlbnRpYWxseSBkYW5nZXJvdXMgY2hhcmFjdGVyczogJXMi LAorCQkJCQkJbm9kZV9pZCwgaG9zdG5hbWUpLAorCQkJCSBlcnJoaW50KCJIb3N0bmFtZXMgd2l0 aCBzaGVsbCBtZXRhY2hhcmFjdGVycyBtYXkgcG9zZSBzZWN1cml0eSByaXNrcyB3aGVuIHVzZWQg d2l0aCBleHRlcm5hbCBjb21tYW5kcy4gQ29uc2lkZXIgdXNpbmcgSVAgYWRkcmVzc2VzIG9yIHNh bml0aXplZCBob3N0bmFtZXMuIikpKTsKKwl9CisKIAkvKiBVc2UgaG9zdG5hbWU6cG9ydCBmb3Jt YXQgKi8KLQlyZXR1cm4gcHNwcmludGYoIiVzOiVkIiwgYmktPmJhY2tlbmRfaG9zdG5hbWUsIGJp LT5iYWNrZW5kX3BvcnQpOworCXJldHVybiBwc3ByaW50ZigiJXM6JWQiLCBob3N0bmFtZSwgYmkt PmJhY2tlbmRfcG9ydCk7CiB9CiAKIHN0YXRpYyB2b2lkCi0tIAoyLjUyLjAKCg== --000000000000168efc0643dce380--