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 1w5QCD-003Ef0-1H for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 15:31:01 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w5QCB-00EirZ-2l for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 15:31:00 +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 1w5QCB-00EirR-1b for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 15:30:59 +0000 Received: from mail-oi1-x22e.google.com ([2607:f8b0:4864:20::22e]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w5QC8-000000015a0-45oc for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 15:30:59 +0000 Received: by mail-oi1-x22e.google.com with SMTP id 5614622812f47-467161c4b7aso1115627b6e.1 for ; Wed, 25 Mar 2026 08:30:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774452656; cv=none; d=google.com; s=arc-20240605; b=Xse7zY0gWr73L8+osdedreSrCZJbDKoU5d3bCTb+uJ17ckkpGwLq+b2Ifx+z1Tgezc Lela4LepncMxT9nLxqYrliqBIAQSN0tu8sI7e7r/FasDpP35loba1xaCibY1FjS1fczB +0K/ZDmf0HOOl1WRRd5+mUnXtKB9qojbVAs1LhGd2e0rHXY6ymTrpLVhaH4qq/Qmn3WR WgyF/PAbIIMwHazMORIcSlX6zMSVhvK5N2J3TAHs89Nd9L6bzRCQGxnPzeXrfRYDj0I/ pxJFv8HPxEmSgqqMcKCpHsC3Rix7IF2/m+4s3/JjAAP9JwbHEHiVkql6hCBNvtPF+LuS jg+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=nH0Zp0bTzhvPKyu3ADat/SiooRjdmopK61MXero1sXg=; fh=SprTjyyUNMFOaPK7zUpaC1EEovCYhXioP7Zs2WMpltw=; b=CWtg5Jn1y6XCH6Ah2kiiN8ZkLC5YBVor+xyWLLR+i8zIOnFSccZBFARzTdFNRxEs5k 2lJFVBtgeUfN8ZMeA/u3hAk7IzhUGy59l/Zu/QuIKh2+OxrzNl0/bl01izVqPUxnrq95 wrWs/1nVFtsBimIBiiKjXfVWwi8ml3soiPOGbdrlHU6VmEbXNIUcZYZSV/ApBZJFRkE9 Tyv3EjRewel7Ny4u4KV9qgfXK+k1Brga5+UQyW6c1i9oqcjHO/eonncoO/L9jxTAg0so uQ9U8wEY9S6mT+t+sbGQG3Yg064xG34nxM/FwGOqq5Gh2lETBXe4XI+8SutHUoBE1Q5l VXPA==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774452655; x=1775057455; 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=nH0Zp0bTzhvPKyu3ADat/SiooRjdmopK61MXero1sXg=; b=lRLyWtsy6kOw/UO6mDi2dUbjXsVrRW+3e4iEht02NDfigWJzPt3Yzyopzw591H9O07 IQIRHjdpLwifeBuiA+a2hKAm4JcSxwmOkzr8gr/2oek0gTAl1TclxyxfuY5daXBOlxRz sNqlpRLvTRwS48hWy3kjtInuo674tLfFQ6YMlPWzQMjz86WEmBG5FOIxvUO238yLobAO MdibgD++uH4W2/LBWNU+N3/4j2poX9xn+Cb+MP93NxE/A2h5rPPXfNfM5kzGOzcnu9vQ OujQ64DO5KlJKNWi3uPeVUCD7xTsHSnlDmpB/t+XafUClwJMq/OFjZCR3qRkXkGWAIRQ +KTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774452655; x=1775057455; 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=nH0Zp0bTzhvPKyu3ADat/SiooRjdmopK61MXero1sXg=; b=P9v/i4ng9KBYiBO72yWW/iJ46RXv+/uLnJy7yMs2ZoW4q5o6WQVfmEdMz67TudM0vA Tp84gWV3NGB/8ukDXOyiD7WWofe9vPZsF4WCaGylj3bC8n9fEk60osH0b0Q95DoJQUsw s9L6j9YPynmBCaqjuA8+PioE7lZiU98IUI1qKYfEvz0IZGpryhukWJA2YndgdZar3gFu /sMbSO14B8cr5zPv3qdkJViMp3se2MJCafQ+vj8+kfq8lD4YldfoZ49IaBznFqDnrhOF n2yfDZRGIStEb9rF6IrJinihCOtQj4eSGi9h2RtrGxXKDM0rcHixG0ohb+ov5ccF4qNz 4tDQ== X-Gm-Message-State: AOJu0Yw/AKNrV1KsllWoa2Y2FZahaH6ltbzbpOlvpq6t0LdHPGh3s/+7 mvXwM6BHa1gioZ+XTpke9fGMnxjm8ICZBPlqfRlnwooil4deGDF7v4aIC6sSKSwhYHNGqin7q9x fZAbXybhd8f5Ku+XcZ5H9weXupO3mpRk= X-Gm-Gg: ATEYQzxew6V6hLDYvk3amcjbLoaH0iMoIsZaUHuRQzxNQa+gme54NP9R+J8TWyz+DKv DegzyrEqHVe8kX0uQzh9KlSVSQXkBx8jJxBOmKvVszsWLnmxu90aCeyO7VRN09aa2FPUetdulQx 1eEvrDNUU6POkxQvG+6fF3EtjaSmkMkx1WBB55TSz2WZ04UfGVaDpFWW9z7Z98qE5iChCeYWhoK A4wLvGioCYXauRzUb2l5PkrbsKj/7qM+SYXWb2JlsoZEv1+OjJpRTxcOt0Eb3LGez/3kuRZ0+4b cmWISu9dGVRAkA5vsJgQYgq87D4s/PXLOSy+f3dXqg== X-Received: by 2002:a05:6808:1924:b0:467:5f1:fc93 with SMTP id 5614622812f47-46a5c556009mr1917015b6e.9.1774452655511; Wed, 25 Mar 2026 08:30:55 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Fujii Masao Date: Thu, 26 Mar 2026 00:30:42 +0900 X-Gm-Features: AQROBzCar3Yqizzb5W2Wy-xTjUamJyoBd6_k3bHTN2aMJiyYhZWm3kJQi4TyGVo Message-ID: Subject: Re: pg_stat_replication.*_lag sometimes shows NULL during active replication To: Shinya Kato Cc: PostgreSQL Hackers Content-Type: multipart/mixed; boundary="00000000000034038a064ddaf434" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000034038a064ddaf434 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Mar 25, 2026 at 4:03=E2=80=AFPM Shinya Kato wrote: > Thanks for the updated patch. LGTM. > > Regarding the backpatch, I'd personally appreciate it if the walsender.c = changes were backpatched to stable branches. As you noted, it don't fully s= olve the reported issue, but they do help reduce the cases where lag column= s in pg_stat_replication unexpectedly become NULL. > > Even a partial mitigation in the back branches would be valuable for user= s running stable releases. +1 I've split the changes into two patches. Patch 0001 fixes premature NULL lag reporting in walsender. I will commit i= t and backpatch it to all supported branches. Patch 0002 avoids sending duplicate WAL locations in standby status replies= . I will commit this to master only. Regards, --=20 Fujii Masao --00000000000034038a064ddaf434 Content-Type: application/octet-stream; name="v7-0002-Avoid-sending-duplicate-WAL-locations-in-standby-.patch" Content-Disposition: attachment; filename="v7-0002-Avoid-sending-duplicate-WAL-locations-in-standby-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn67abco1 RnJvbSBjNDhmN2UxYTdiYjdjOWFhYjk5MzVlZjViNGM1MjYzYjkwNDIwMWFlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFdlZCwgMjUgTWFyIDIwMjYgMjM6NTM6NDggKzA5MDAKU3ViamVjdDogW1BBVENIIHY3IDIv Ml0gQXZvaWQgc2VuZGluZyBkdXBsaWNhdGUgV0FMIGxvY2F0aW9ucyBpbiBzdGFuZGJ5CiBzdGF0 dXMgcmVwbGllcwoKUHJldmlvdXNseSwgd2hlbiB0aGUgc3RhcnR1cCBwcm9jZXNzIGFwcGxpZWQg V0FMIGFuZCByZXF1ZXN0ZWQgd2FscmVjZWl2ZXIKdG8gc2VuZCBhbiBhcHBseSBub3RpZmljYXRp b24gdG8gdGhlIHByaW1hcnksIHdhbHJlY2VpdmVyIHNlbnQgYSBzdGF0dXMgcmVwbHkKdW5jb25k aXRpb25hbGx5LCBldmVuIGlmIHRoZSBXQUwgbG9jYXRpb25zIGhhZCBub3QgYWR2YW5jZWQgc2lu Y2UKdGhlIHByZXZpb3VzIHVwZGF0ZS4KCkFzIGEgcmVzdWx0LCB0aGUgc3RhbmRieSBjb3VsZCBz ZW5kIHR3byBjb25zZWN1dGl2ZSBzdGF0dXMgcmVwbHkgbWVzc2FnZXMKd2l0aCBpZGVudGljYWwg V0FMIGxvY2F0aW9ucyBldmVuIHRob3VnaCB3YWxfcmVjZWl2ZXJfc3RhdHVzX2ludGVydmFsIGhh ZApub3QgeWV0IGVsYXBzZWQuIFRoaXMgY291bGQgdW5leHBlY3RlZGx5IHJlc2V0IHRoZSByZXBv cnRlZCByZXBsaWNhdGlvbiBsYWcsCm1ha2luZyBpdCBkaWZmaWN1bHQgZm9yIHVzZXJzIHRvIG1v bml0b3IgbGFnLiBUaGUgc2Vjb25kIG1lc3NhZ2Ugd2FzIGFsc28KdW5uZWNlc3NhcnkgYmVjYXVz ZSBpdCByZXBvcnRlZCBubyBwcm9ncmVzcy4KClRoaXMgY29tbWl0IHVwZGF0ZXMgd2FscmVjZWl2 ZXIgdG8gc2VuZCBhIHJlcGx5IG9ubHkgd2hlbiB0aGUgYXBwbHkgbG9jYXRpb24KaGFzIGFkdmFu Y2VkIHNpbmNlIHRoZSBsYXN0IHN0YXR1cyB1cGRhdGUsIGV2ZW4gd2hlbiB0aGUgc3RhcnR1cCBw cm9jZXNzCnJlcXVlc3RzIGEgbm90aWZpY2F0aW9uLgoKQXV0aG9yOiBGdWppaSBNYXNhbyA8bWFz YW8uZnVqaWlAZ21haWwuY29tPgpSZXZpZXdlZC1ieTogU2hpbnlhIEthdG8gPHNoaW55YTExLmth dG9AZ21haWwuY29tPgpSZXZpZXdlZC1ieTogQ2hhbyBMaSA8bGkuZXZhbi5jaGFvQGdtYWlsLmNv bT4KRGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQU96RXVyVHpjVXJFenJIOTdERDcr WXo9SEdQVTgxa3pXUW9uS1p2cUJ3WWh4Mkc5X0FAbWFpbC5nbWFpbC5jb20KLS0tCiBzcmMvYmFj a2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYyB8ICA0ICstCiBzcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi93YWxyZWNlaXZlci5jICAgICB8IDc0ICsrKysrKysrKysrKysrLS0tLS0tLS0t CiBzcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oICAgICB8ICA2ICstCiAzIGZp bGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDM1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2dyZWNvdmVyeS5jIGIvc3JjL2JhY2tl bmQvYWNjZXNzL3RyYW5zYW0veGxvZ3JlY292ZXJ5LmMKaW5kZXggNmQyYzRhODZiOTYuLmZkMWMz NmQwNjFkIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3Zl cnkuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYwpAQCAt MjAxNSw3ICsyMDE1LDcgQEAgQXBwbHlXYWxSZWNvcmQoWExvZ1JlYWRlclN0YXRlICp4bG9ncmVh ZGVyLCBYTG9nUmVjb3JkICpyZWNvcmQsIFRpbWVMaW5lSUQgKnJlcGwKIAlpZiAoZG9SZXF1ZXN0 V2FsUmVjZWl2ZXJSZXBseSkKIAl7CiAJCWRvUmVxdWVzdFdhbFJlY2VpdmVyUmVwbHkgPSBmYWxz ZTsKLQkJV2FsUmN2Rm9yY2VSZXBseSgpOworCQlXYWxSY3ZSZXF1ZXN0QXBwbHlSZXBseSgpOwog CX0KIAogCS8qIEFsbG93IHJlYWQtb25seSBjb25uZWN0aW9ucyBpZiB3ZSdyZSBjb25zaXN0ZW50 IG5vdyAqLwpAQCAtMzk3MCw3ICszOTcwLDcgQEAgV2FpdEZvcldBTFRvQmVjb21lQXZhaWxhYmxl KFhMb2dSZWNQdHIgUmVjUHRyLCBib29sIHJhbmRBY2Nlc3MsCiAJCQkJCSAqLwogCQkJCQlpZiAo IXN0cmVhbWluZ19yZXBseV9zZW50KQogCQkJCQl7Ci0JCQkJCQlXYWxSY3ZGb3JjZVJlcGx5KCk7 CisJCQkJCQlXYWxSY3ZSZXF1ZXN0QXBwbHlSZXBseSgpOwogCQkJCQkJc3RyZWFtaW5nX3JlcGx5 X3NlbnQgPSB0cnVlOwogCQkJCQl9CiAKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0 aW9uL3dhbHJlY2VpdmVyLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5j CmluZGV4IGZhYmUzYzczMDM0Li5hNDM3MjczY2Y5YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv cmVwbGljYXRpb24vd2FscmVjZWl2ZXIuYworKysgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93 YWxyZWNlaXZlci5jCkBAIC0xNDMsNyArMTQzLDcgQEAgc3RhdGljIHZvaWQgWExvZ1dhbFJjdldy aXRlKGNoYXIgKmJ1ZiwgU2l6ZSBuYnl0ZXMsIFhMb2dSZWNQdHIgcmVjcHRyLAogCQkJCQkJCVRp bWVMaW5lSUQgdGxpKTsKIHN0YXRpYyB2b2lkIFhMb2dXYWxSY3ZGbHVzaChib29sIGR5aW5nLCBU aW1lTGluZUlEIHRsaSk7CiBzdGF0aWMgdm9pZCBYTG9nV2FsUmN2Q2xvc2UoWExvZ1JlY1B0ciBy ZWNwdHIsIFRpbWVMaW5lSUQgdGxpKTsKLXN0YXRpYyB2b2lkIFhMb2dXYWxSY3ZTZW5kUmVwbHko Ym9vbCBmb3JjZSwgYm9vbCByZXF1ZXN0UmVwbHkpOworc3RhdGljIHZvaWQgWExvZ1dhbFJjdlNl bmRSZXBseShib29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBseSwgYm9vbCBjaGVja0FwcGx5KTsK IHN0YXRpYyB2b2lkIFhMb2dXYWxSY3ZTZW5kSFNGZWVkYmFjayhib29sIGltbWVkKTsKIHN0YXRp YyB2b2lkIFByb2Nlc3NXYWxTbmRyTWVzc2FnZShYTG9nUmVjUHRyIHdhbEVuZCwgVGltZXN0YW1w VHogc2VuZFRpbWUpOwogc3RhdGljIHZvaWQgV2FsUmN2Q29tcHV0ZU5leHRXYWtldXAoV2FsUmN2 V2FrZXVwUmVhc29uIHJlYXNvbiwgVGltZXN0YW1wVHogbm93KTsKQEAgLTQxNyw3ICs0MTcsNyBA QCBXYWxSZWNlaXZlck1haW4oY29uc3Qgdm9pZCAqc3RhcnR1cF9kYXRhLCBzaXplX3Qgc3RhcnR1 cF9kYXRhX2xlbikKIAkJCQlXYWxSY3ZDb21wdXRlTmV4dFdha2V1cChpLCBub3cpOwogCiAJCQkv KiBTZW5kIGluaXRpYWwgcmVwbHkvZmVlZGJhY2sgbWVzc2FnZXMuICovCi0JCQlYTG9nV2FsUmN2 U2VuZFJlcGx5KHRydWUsIGZhbHNlKTsKKwkJCVhMb2dXYWxSY3ZTZW5kUmVwbHkodHJ1ZSwgZmFs c2UsIGZhbHNlKTsKIAkJCVhMb2dXYWxSY3ZTZW5kSFNGZWVkYmFjayh0cnVlKTsKIAogCQkJLyog TG9vcCB1bnRpbCBlbmQtb2Ytc3RyZWFtaW5nIG9yIGVycm9yICovCkBAIC00OTMsNyArNDkzLDcg QEAgV2FsUmVjZWl2ZXJNYWluKGNvbnN0IHZvaWQgKnN0YXJ0dXBfZGF0YSwgc2l6ZV90IHN0YXJ0 dXBfZGF0YV9sZW4pCiAJCQkJCX0KIAogCQkJCQkvKiBMZXQgdGhlIHByaW1hcnkga25vdyB0aGF0 IHdlIHJlY2VpdmVkIHNvbWUgZGF0YS4gKi8KLQkJCQkJWExvZ1dhbFJjdlNlbmRSZXBseShmYWxz ZSwgZmFsc2UpOworCQkJCQlYTG9nV2FsUmN2U2VuZFJlcGx5KGZhbHNlLCBmYWxzZSwgZmFsc2Up OwogCiAJCQkJCS8qCiAJCQkJCSAqIElmIHdlJ3ZlIHdyaXR0ZW4gc29tZSByZWNvcmRzLCBmbHVz aCB0aGVtIHRvIGRpc2sgYW5kCkBAIC01MzksNyArNTM5LDcgQEAgV2FsUmVjZWl2ZXJNYWluKGNv bnN0IHZvaWQgKnN0YXJ0dXBfZGF0YSwgc2l6ZV90IHN0YXJ0dXBfZGF0YV9sZW4pCiAJCQkJCVJl c2V0TGF0Y2goTXlMYXRjaCk7CiAJCQkJCUNIRUNLX0ZPUl9JTlRFUlJVUFRTKCk7CiAKLQkJCQkJ aWYgKHdhbHJjdi0+Zm9yY2VfcmVwbHkpCisJCQkJCWlmICh3YWxyY3YtPmFwcGx5X3JlcGx5X3Jl cXVlc3RlZCkKIAkJCQkJewogCQkJCQkJLyoKIAkJCQkJCSAqIFRoZSByZWNvdmVyeSBwcm9jZXNz IGhhcyBhc2tlZCB1cyB0byBzZW5kIGFwcGx5CkBAIC01NDcsOSArNTQ3LDkgQEAgV2FsUmVjZWl2 ZXJNYWluKGNvbnN0IHZvaWQgKnN0YXJ0dXBfZGF0YSwgc2l6ZV90IHN0YXJ0dXBfZGF0YV9sZW4p CiAJCQkJCQkgKiBmYWxzZSBpbiBzaGFyZWQgbWVtb3J5IGJlZm9yZSBzZW5kaW5nIHRoZSByZXBs eSwgc28KIAkJCQkJCSAqIHdlIGRvbid0IG1pc3MgYSBuZXcgcmVxdWVzdCBmb3IgYSByZXBseS4K IAkJCQkJCSAqLwotCQkJCQkJd2FscmN2LT5mb3JjZV9yZXBseSA9IGZhbHNlOworCQkJCQkJd2Fs cmN2LT5hcHBseV9yZXBseV9yZXF1ZXN0ZWQgPSBmYWxzZTsKIAkJCQkJCXBnX21lbW9yeV9iYXJy aWVyKCk7Ci0JCQkJCQlYTG9nV2FsUmN2U2VuZFJlcGx5KHRydWUsIGZhbHNlKTsKKwkJCQkJCVhM b2dXYWxSY3ZTZW5kUmVwbHkoZmFsc2UsIGZhbHNlLCB0cnVlKTsKIAkJCQkJfQogCQkJCX0KIAkJ CQlpZiAocmMgJiBXTF9USU1FT1VUKQpAQCAtNTk1LDcgKzU5NSw3IEBAIFdhbFJlY2VpdmVyTWFp bihjb25zdCB2b2lkICpzdGFydHVwX2RhdGEsIHNpemVfdCBzdGFydHVwX2RhdGFfbGVuKQogCQkJ CQkJd2FrZXVwW1dBTFJDVl9XQUtFVVBfUElOR10gPSBUSU1FU1RBTVBfSU5GSU5JVFk7CiAJCQkJ CX0KIAotCQkJCQlYTG9nV2FsUmN2U2VuZFJlcGx5KHJlcXVlc3RSZXBseSwgcmVxdWVzdFJlcGx5 KTsKKwkJCQkJWExvZ1dhbFJjdlNlbmRSZXBseShyZXF1ZXN0UmVwbHksIHJlcXVlc3RSZXBseSwg ZmFsc2UpOwogCQkJCQlYTG9nV2FsUmN2U2VuZEhTRmVlZGJhY2soZmFsc2UpOwogCQkJCX0KIAkJ CX0KQEAgLTg4Niw3ICs4ODYsNyBAQCBYTG9nV2FsUmN2UHJvY2Vzc01zZyh1bnNpZ25lZCBjaGFy IHR5cGUsIGNoYXIgKmJ1ZiwgU2l6ZSBsZW4sIFRpbWVMaW5lSUQgdGxpKQogCiAJCQkJLyogSWYg dGhlIHByaW1hcnkgcmVxdWVzdGVkIGEgcmVwbHksIHNlbmQgb25lIGltbWVkaWF0ZWx5ICovCiAJ CQkJaWYgKHJlcGx5UmVxdWVzdGVkKQotCQkJCQlYTG9nV2FsUmN2U2VuZFJlcGx5KHRydWUsIGZh bHNlKTsKKwkJCQkJWExvZ1dhbFJjdlNlbmRSZXBseSh0cnVlLCBmYWxzZSwgZmFsc2UpOwogCQkJ CWJyZWFrOwogCQkJfQogCQlkZWZhdWx0OgpAQCAtMTA1Myw3ICsxMDUzLDcgQEAgWExvZ1dhbFJj dkZsdXNoKGJvb2wgZHlpbmcsIFRpbWVMaW5lSUQgdGxpKQogCQkvKiBBbHNvIGxldCB0aGUgcHJp bWFyeSBrbm93IHRoYXQgd2UgbWFkZSBzb21lIHByb2dyZXNzICovCiAJCWlmICghZHlpbmcpCiAJ CXsKLQkJCVhMb2dXYWxSY3ZTZW5kUmVwbHkoZmFsc2UsIGZhbHNlKTsKKwkJCVhMb2dXYWxSY3ZT ZW5kUmVwbHkoZmFsc2UsIGZhbHNlLCBmYWxzZSk7CiAJCQlYTG9nV2FsUmN2U2VuZEhTRmVlZGJh Y2soZmFsc2UpOwogCQl9CiAJfQpAQCAtMTEwNywyNCArMTEwNywzNSBAQCBYTG9nV2FsUmN2Q2xv c2UoWExvZ1JlY1B0ciByZWNwdHIsIFRpbWVMaW5lSUQgdGxpKQogfQogCiAvKgotICogU2VuZCBy ZXBseSBtZXNzYWdlIHRvIHByaW1hcnksIGluZGljYXRpbmcgb3VyIGN1cnJlbnQgV0FMIGxvY2F0 aW9ucywgb2xkZXN0Ci0gKiB4bWluIGFuZCB0aGUgY3VycmVudCB0aW1lLgorICogU2VuZCByZXBs eSBtZXNzYWdlIHRvIHByaW1hcnksIGluZGljYXRpbmcgb3VyIGN1cnJlbnQgV0FMIGxvY2F0aW9u cyBhbmQKKyAqIHRpbWUuCiAgKgotICogSWYgJ2ZvcmNlJyBpcyBub3Qgc2V0LCB0aGUgbWVzc2Fn ZSBpcyBvbmx5IHNlbnQgaWYgZW5vdWdoIHRpbWUgaGFzCi0gKiBwYXNzZWQgc2luY2UgbGFzdCBz dGF0dXMgdXBkYXRlIHRvIHJlYWNoIHdhbF9yZWNlaXZlcl9zdGF0dXNfaW50ZXJ2YWwuCi0gKiBJ ZiB3YWxfcmVjZWl2ZXJfc3RhdHVzX2ludGVydmFsIGlzIGRpc2FibGVkIGFsdG9nZXRoZXIgYW5k ICdmb3JjZScgaXMKLSAqIGZhbHNlLCB0aGlzIGlzIGEgbm8tb3AuCisgKiBUaGUgbWVzc2FnZSBp cyBzZW50IGlmICdmb3JjZScgaXMgc2V0LCBpZiBlbm91Z2ggdGltZSBoYXMgcGFzc2VkIHNpbmNl IHRoZQorICogbGFzdCB1cGRhdGUgdG8gcmVhY2ggd2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZh bCwgb3IgaWYgV0FMIGxvY2F0aW9ucyBoYXZlCisgKiBhZHZhbmNlZCBzaW5jZSB0aGUgcHJldmlv dXMgc3RhdHVzIHVwZGF0ZS4gSWYgd2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZhbAorICogaXMg ZGlzYWJsZWQgYW5kICdmb3JjZScgaXMgZmFsc2UsIHRoaXMgZnVuY3Rpb24gZG9lcyBub3RoaW5n LiBTZXQgJ2ZvcmNlJyB0bworICogc2VuZCB0aGUgbWVzc2FnZSB1bmNvbmRpdGlvbmFsbHkuCisg KgorICogV2hldGhlciBXQUwgbG9jYXRpb25zIGFyZSBjb25zaWRlcmVkICJhZHZhbmNlZCIgZGVw ZW5kcyBvbiAnY2hlY2tBcHBseScuCisgKiBJZiAnY2hlY2tBcHBseScgaXMgZmFsc2UsIG9ubHkg dGhlIHdyaXRlIGFuZCBmbHVzaCBsb2NhdGlvbnMgYXJlIGNoZWNrZWQuCisgKiBUaGlzIHNob3Vs ZCBiZSB1c2VkIHdoZW4gdGhlIGNhbGwgaXMgdHJpZ2dlcmVkIGJ5IHdyaXRlL2ZsdXNoIGFjdGl2 aXR5CisgKiAoZS5nLiwgYWZ0ZXIgd2FscmVjZWl2ZXIgd3JpdGVzIG9yIGZsdXNoZXMgV0FMKSwg YW5kIGF2b2lkcyB0aGUKKyAqIGFwcGx5LWxvY2F0aW9uIGNoZWNrLCB3aGljaCByZXF1aXJlcyBh IHNwaW5sb2NrLiBJZiAnY2hlY2tBcHBseScgaXMgdHJ1ZSwKKyAqIHRoZSBhcHBseSBsb2NhdGlv biBpcyBhbHNvIGNvbnNpZGVyZWQuIFRoaXMgc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGUgYXBwbHkK KyAqIGxvY2F0aW9uIGlzIGV4cGVjdGVkIHRvIGFkdmFuY2UgKGUuZy4sIHdoZW4gdGhlIHN0YXJ0 dXAgcHJvY2VzcyByZXF1ZXN0cworICogYW4gYXBwbHkgbm90aWZpY2F0aW9uKS4KICAqCiAgKiBJ ZiAncmVxdWVzdFJlcGx5JyBpcyB0cnVlLCByZXF1ZXN0cyB0aGUgc2VydmVyIHRvIHJlcGx5IGlt bWVkaWF0ZWx5IHVwb24KICAqIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UuIFRoaXMgaXMgdXNlZCBm b3IgaGVhcnRiZWF0cywgd2hlbiBhcHByb2FjaGluZwogICogd2FsX3JlY2VpdmVyX3RpbWVvdXQu CiAgKi8KIHN0YXRpYyB2b2lkCi1YTG9nV2FsUmN2U2VuZFJlcGx5KGJvb2wgZm9yY2UsIGJvb2wg cmVxdWVzdFJlcGx5KQorWExvZ1dhbFJjdlNlbmRSZXBseShib29sIGZvcmNlLCBib29sIHJlcXVl c3RSZXBseSwgYm9vbCBjaGVja0FwcGx5KQogewogCXN0YXRpYyBYTG9nUmVjUHRyIHdyaXRlUHRy ID0gSW52YWxpZFhMb2dSZWNQdHI7CiAJc3RhdGljIFhMb2dSZWNQdHIgZmx1c2hQdHIgPSBJbnZh bGlkWExvZ1JlY1B0cjsKLQlYTG9nUmVjUHRyCWFwcGx5UHRyOworCXN0YXRpYyBYTG9nUmVjUHRy IGFwcGx5UHRyID0gSW52YWxpZFhMb2dSZWNQdHI7CisJWExvZ1JlY1B0cglsYXRlc3RBcHBseVB0 ciA9IEludmFsaWRYTG9nUmVjUHRyOwogCVRpbWVzdGFtcFR6IG5vdzsKIAogCS8qCkBAIC0xMTQw LDE3ICsxMTUxLDE5IEBAIFhMb2dXYWxSY3ZTZW5kUmVwbHkoYm9vbCBmb3JjZSwgYm9vbCByZXF1 ZXN0UmVwbHkpCiAJLyoKIAkgKiBXZSBjYW4gY29tcGFyZSB0aGUgd3JpdGUgYW5kIGZsdXNoIHBv c2l0aW9ucyB0byB0aGUgbGFzdCBtZXNzYWdlIHdlCiAJICogc2VudCB3aXRob3V0IHRha2luZyBh bnkgbG9jaywgYnV0IHRoZSBhcHBseSBwb3NpdGlvbiByZXF1aXJlcyBhIHNwaW4KLQkgKiBsb2Nr LCBzbyB3ZSBkb24ndCBjaGVjayB0aGF0IHVubGVzcyBzb21ldGhpbmcgZWxzZSBoYXMgY2hhbmdl ZCBvciAxMAotCSAqIHNlY29uZHMgaGF2ZSBwYXNzZWQuICBUaGlzIG1lYW5zIHRoYXQgdGhlIGFw cGx5IFdBTCBsb2NhdGlvbiB3aWxsCi0JICogYXBwZWFyLCBmcm9tIHRoZSBwcmltYXJ5J3MgcG9p bnQgb2YgdmlldywgdG8gbGFnIHNsaWdodGx5LCBidXQgc2luY2UKLQkgKiB0aGlzIGlzIG9ubHkg Zm9yIHJlcG9ydGluZyBwdXJwb3NlcyBhbmQgb25seSBvbiBpZGxlIHN5c3RlbXMsIHRoYXQncwot CSAqIHByb2JhYmx5IE9LLgorCSAqIGxvY2ssIHNvIHdlIGRvbid0IGNoZWNrIHRoYXQgdW5sZXNz IGl0IGlzIGV4cGVjdGVkIHRvIGFkdmFuY2Ugc2luY2UgdGhlCisJICogcHJldmlvdXMgdXBkYXRl LCBpLmUuLCB3aGVuICdjaGVja0FwcGx5JyBpcyB0cnVlLgogCSAqLwotCWlmICghZm9yY2UKLQkJ JiYgd3JpdGVQdHIgPT0gTG9nc3RyZWFtUmVzdWx0LldyaXRlCi0JCSYmIGZsdXNoUHRyID09IExv Z3N0cmVhbVJlc3VsdC5GbHVzaAotCQkmJiBub3cgPCB3YWtldXBbV0FMUkNWX1dBS0VVUF9SRVBM WV0pCi0JCXJldHVybjsKKwlpZiAoIWZvcmNlICYmIG5vdyA8IHdha2V1cFtXQUxSQ1ZfV0FLRVVQ X1JFUExZXSkKKwl7CisJCWlmIChjaGVja0FwcGx5KQorCQkJbGF0ZXN0QXBwbHlQdHIgPSBHZXRY TG9nUmVwbGF5UmVjUHRyKE5VTEwpOworCisJCWlmICh3cml0ZVB0ciA9PSBMb2dzdHJlYW1SZXN1 bHQuV3JpdGUKKwkJCSYmIGZsdXNoUHRyID09IExvZ3N0cmVhbVJlc3VsdC5GbHVzaAorCQkJJiYg KCFjaGVja0FwcGx5IHx8IGFwcGx5UHRyID09IGxhdGVzdEFwcGx5UHRyKSkKKwkJCXJldHVybjsK Kwl9CiAKIAkvKiBNYWtlIHN1cmUgd2Ugd2FrZSB1cCB3aGVuIGl0J3MgdGltZSB0byBzZW5kIGFu b3RoZXIgcmVwbHkuICovCiAJV2FsUmN2Q29tcHV0ZU5leHRXYWtldXAoV0FMUkNWX1dBS0VVUF9S RVBMWSwgbm93KTsKQEAgLTExNTgsNyArMTE3MSw4IEBAIFhMb2dXYWxSY3ZTZW5kUmVwbHkoYm9v bCBmb3JjZSwgYm9vbCByZXF1ZXN0UmVwbHkpCiAJLyogQ29uc3RydWN0IGEgbmV3IG1lc3NhZ2Ug Ki8KIAl3cml0ZVB0ciA9IExvZ3N0cmVhbVJlc3VsdC5Xcml0ZTsKIAlmbHVzaFB0ciA9IExvZ3N0 cmVhbVJlc3VsdC5GbHVzaDsKLQlhcHBseVB0ciA9IEdldFhMb2dSZXBsYXlSZWNQdHIoTlVMTCk7 CisJYXBwbHlQdHIgPSAobGF0ZXN0QXBwbHlQdHIgPT0gSW52YWxpZFhMb2dSZWNQdHIpID8KKwkJ R2V0WExvZ1JlcGxheVJlY1B0cihOVUxMKSA6IGxhdGVzdEFwcGx5UHRyOwogCiAJcmVzZXRTdHJp bmdJbmZvKCZyZXBseV9tZXNzYWdlKTsKIAlwcV9zZW5kYnl0ZSgmcmVwbHlfbWVzc2FnZSwgUHFS ZXBsTXNnX1N0YW5kYnlTdGF0dXNVcGRhdGUpOwpAQCAtMTM3OCwxMSArMTM5MiwxMSBAQCBXYWxS Y3ZDb21wdXRlTmV4dFdha2V1cChXYWxSY3ZXYWtldXBSZWFzb24gcmVhc29uLCBUaW1lc3RhbXBU eiBub3cpCiAgKiBzeW5jaHJvbm91c19jb21taXQgPSByZW1vdGVfYXBwbHkuCiAgKi8KIHZvaWQK LVdhbFJjdkZvcmNlUmVwbHkodm9pZCkKK1dhbFJjdlJlcXVlc3RBcHBseVJlcGx5KHZvaWQpCiB7 CiAJUHJvY051bWJlcglwcm9jbm87CiAKLQlXYWxSY3YtPmZvcmNlX3JlcGx5ID0gdHJ1ZTsKKwlX YWxSY3YtPmFwcGx5X3JlcGx5X3JlcXVlc3RlZCA9IHRydWU7CiAJLyogZmV0Y2hpbmcgdGhlIHBy b2MgbnVtYmVyIGlzIHByb2JhYmx5IGF0b21pYywgYnV0IGRvbid0IHJlbHkgb24gaXQgKi8KIAlT cGluTG9ja0FjcXVpcmUoJldhbFJjdi0+bXV0ZXgpOwogCXByb2NubyA9IFdhbFJjdi0+cHJvY25v OwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuaCBiL3Ny Yy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmgKaW5kZXggOWI5YmQ5MTYzMTQuLjg1 ZDI0Yzg3Mjk4IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZl ci5oCisrKyBiL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmgKQEAgLTE1Niwx MSArMTU2LDExIEBAIHR5cGVkZWYgc3RydWN0CiAJcGdfYXRvbWljX3VpbnQ2NCB3cml0dGVuVXB0 bzsKIAogCS8qCi0JICogZm9yY2Ugd2FscmVjZWl2ZXIgcmVwbHk/ICBUaGlzIGRvZXNuJ3QgbmVl ZCB0byBiZSBsb2NrZWQ7IG1lbW9yeQorCSAqIHJlcXVlc3Qgd2FscmVjZWl2ZXIgcmVwbHk/ICBU aGlzIGRvZXNuJ3QgbmVlZCB0byBiZSBsb2NrZWQ7IG1lbW9yeQogCSAqIGJhcnJpZXJzIGZvciBv cmRlcmluZyBhcmUgc3VmZmljaWVudC4gIEJ1dCB3ZSBkbyBuZWVkIGF0b21pYyBmZXRjaCBhbmQK IAkgKiBzdG9yZSBzZW1hbnRpY3MsIHNvIHVzZSBzaWdfYXRvbWljX3QuCiAJICovCi0Jc2lnX2F0 b21pY190IGZvcmNlX3JlcGx5OwkvKiB1c2VkIGFzIGEgYm9vbCAqLworCXNpZ19hdG9taWNfdCBh cHBseV9yZXBseV9yZXF1ZXN0ZWQ7IC8qIHVzZWQgYXMgYSBib29sICovCiB9IFdhbFJjdkRhdGE7 CiAKIGV4dGVybiBQR0RMTElNUE9SVCBXYWxSY3ZEYXRhICpXYWxSY3Y7CkBAIC00ODgsNyArNDg4 LDcgQEAgd2FscmN2X2NsZWFyX3Jlc3VsdChXYWxSY3ZFeGVjUmVzdWx0ICp3YWxyZXMpCiAKIC8q IHByb3RvdHlwZXMgZm9yIGZ1bmN0aW9ucyBpbiB3YWxyZWNlaXZlci5jICovCiBwZ19ub3JldHVy biBleHRlcm4gdm9pZCBXYWxSZWNlaXZlck1haW4oY29uc3Qgdm9pZCAqc3RhcnR1cF9kYXRhLCBz aXplX3Qgc3RhcnR1cF9kYXRhX2xlbik7Ci1leHRlcm4gdm9pZCBXYWxSY3ZGb3JjZVJlcGx5KHZv aWQpOworZXh0ZXJuIHZvaWQgV2FsUmN2UmVxdWVzdEFwcGx5UmVwbHkodm9pZCk7CiAKIC8qIHBy b3RvdHlwZXMgZm9yIGZ1bmN0aW9ucyBpbiB3YWxyZWNlaXZlcmZ1bmNzLmMgKi8KIGV4dGVybiBT aXplIFdhbFJjdlNobWVtU2l6ZSh2b2lkKTsKLS0gCjIuNTEuMgoK --00000000000034038a064ddaf434 Content-Type: application/octet-stream; name="v7-0001-Fix-premature-NULL-lag-reporting-in-pg_stat_repli.patch" Content-Disposition: attachment; filename="v7-0001-Fix-premature-NULL-lag-reporting-in-pg_stat_repli.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn67abc10 RnJvbSBhN2E0YmZiOGQ1OGExNWYxY2FlMTA5ZTQwM2UyMmUxNjk4OThlNTlkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFdlZCwgMjUgTWFyIDIwMjYgMjI6MDk6NDAgKzA5MDAKU3ViamVjdDogW1BBVENIIHY3IDEv Ml0gRml4IHByZW1hdHVyZSBOVUxMIGxhZyByZXBvcnRpbmcgaW4KIHBnX3N0YXRfcmVwbGljYXRp b24KCnBnX3N0YXRfcmVwbGljYXRpb24gaXMgZG9jdW1lbnRlZCB0byBrZWVwIHRoZSBsYXN0IG1l YXN1cmVkIGxhZyB2YWx1ZXMgZm9yCmEgc2hvcnQgdGltZSBhZnRlciB0aGUgc3RhbmRieSBjYXRj aGVzIHVwLCBhbmQgdGhlbiBzZXQgdGhlbSB0byBOVUxMIHdoZW4KdGhlcmUgaXMgbm8gV0FMIGFj dGl2aXR5LiBIb3dldmVyLCBwcmV2aW91c2x5IGxhZyB2YWx1ZXMgY291bGQgYmVjb21lIE5VTEwK cHJlbWF0dXJlbHkgZXZlbiB3aGlsZSBXQUwgYWN0aXZpdHkgd2FzIG9uZ29pbmcsIGVzcGVjaWFs bHkgaW4gbG9naWNhbApyZXBsaWNhdGlvbi4KClRoaXMgaGFwcGVuZWQgYmVjYXVzZSB0aGUgY29k ZSBjbGVhcmVkIGxhZyB3aGVuIHR3byBjb25zZWN1dGl2ZSByZXBseSBtZXNzYWdlcwppbmRpY2F0 ZWQgdGhhdCB0aGUgYXBwbHkgbG9jYXRpb24gaGFkIGNhdWdodCB1cCB3aXRoIHRoZSBzZW5kIGxv Y2F0aW9uLgpJdCBkaWQgbm90IHZlcmlmeSB0aGF0IHRoZSByZXBvcnRlZCBwb3NpdGlvbnMgd2Vy ZSB1bmNoYW5nZWQsIHNvIGxhZyBjb3VsZCBiZQpjbGVhcmVkIGV2ZW4gd2hlbiBwb3NpdGlvbnMg aGFkIGFkdmFuY2VkIGJldHdlZW4gbWVzc2FnZXMuIEluIGxvZ2ljYWwKcmVwbGljYXRpb24sIHdo ZXJlIHRoZSBhcHBseSBsb2NhdGlvbiBvZnRlbiBxdWlja2x5IGNhdGNoZXMgdXAsIHRoaXMgaXNz dWUgd2FzCm1vcmUgbGlrZWx5IHRvIG9jY3VyLgoKVGhpcyBjb21taXQgZml4ZXMgdGhlIGlzc3Vl IGJ5IGNsZWFyaW5nIGxhZyBvbmx5IHdoZW4gdGhlIHN0YW5kYnkgcmVwb3J0cyB0aGF0Cml0IGhh cyBmdWxseSByZXBsYXllZCBXQUwgKGkuZS4sIGJvdGggZmx1c2ggYW5kIGFwcGx5IGxvY2F0aW9u cyBoYXZlIGNhdWdodCB1cAp3aXRoIHRoZSBzZW5kIGxvY2F0aW9uKSBhbmQgdGhlIHdyaXRlL2Zs dXNoL2FwcGx5IHBvc2l0aW9ucyByZW1haW4gdW5jaGFuZ2VkCmFjcm9zcyB0d28gY29uc2VjdXRp dmUgcmVwbHkgbWVzc2FnZXMuCgpUaGUgc2Vjb25kIG1lc3NhZ2Ugd2l0aCB1bmNoYW5nZWQgcG9z aXRpb25zIHR5cGljYWxseSByZXN1bHRzIGZyb20Kd2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZh bCwgc28gbGFnIHZhbHVlcyBhcmUgY2xlYXJlZCBhZnRlciB0aGF0IGludGVydmFsCndoZW4gdGhl cmUgaXMgbm8gYWN0aXZpdHkuIFRoaXMgYXZvaWRzIHNob3dpbmcgc3RhbGUgbGFnIGRhdGEgd2hp bGUgcHJldmVudGluZwpwcmVtYXR1cmUgTlVMTCB2YWx1ZXMuCgpFdmVuIHdpdGggdGhpcyBmaXgs IGxhZyBtYXkgcmFyZWx5IGJlY29tZSBOVUxMIGR1cmluZyBhY3Rpdml0eSBpZiBpZGVudGljYWwK cG9zaXRpb24gcmVwb3J0cyBhcmUgc2VudCByZXBlYXRlZGx5LiBFbGltaW5hdGluZyBzdWNoIGR1 cGxpY2F0ZSBtZXNzYWdlcwp3b3VsZCBhZGRyZXNzIHRoaXMgZnVsbHksIGJ1dCB0aGF0IGNoYW5n ZSBpcyBjb25zaWRlcmVkIHRvbyBpbnZhc2l2ZSBmb3Igc3RhYmxlCmJyYW5jaGVzIGFuZCB3aWxs IGJlIGhhbmRsZWQgaW4gbWFzdGVyIG9ubHkgbGF0ZXIuCgpCYWNrcGF0Y2ggdG8gYWxsIHN1cHBv cnRlZCBicmFuY2hlcy4KCkF1dGhvcjogU2hpbnlhIEthdG8gPHNoaW55YTExLmthdG9AZ21haWwu Y29tPgpSZXZpZXdlZC1ieTogQ2hhbyBMaSA8bGkuZXZhbi5jaGFvQGdtYWlsLmNvbT4KUmV2aWV3 ZWQtYnk6IEZ1amlpIE1hc2FvIDxtYXNhby5mdWppaUBnbWFpbC5jb20+CkRpc2N1c3Npb246IGh0 dHBzOi8vcG9zdGdyLmVzL20vQ0FPekV1clR6Y1VyRXpySDk3REQ3K1l6PUhHUFU4MWt6V1Fvbkta dnFCd1loeDJHOV9BQG1haWwuZ21haWwuY29tCkJhY2twYXRjaC10aHJvdWdoOiAxNAotLS0KIHNy Yy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHNlbmRlci5jIHwgMzUgKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxzZW5kZXIuYyBi L3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHNlbmRlci5jCmluZGV4IDA4MjUzMTAzY2IzLi42 NjUwN2U5YzJkZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vd2Fsc2VuZGVy LmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vd2Fsc2VuZGVyLmMKQEAgLTI0NzIsNyAr MjQ3Miw5IEBAIFByb2Nlc3NTdGFuZGJ5UmVwbHlNZXNzYWdlKHZvaWQpCiAJVGltZXN0YW1wVHog bm93OwogCVRpbWVzdGFtcFR6IHJlcGx5VGltZTsKIAotCXN0YXRpYyBib29sIGZ1bGx5QXBwbGll ZExhc3RUaW1lID0gZmFsc2U7CisJc3RhdGljIFhMb2dSZWNQdHIgcHJldldyaXRlUHRyID0gSW52 YWxpZFhMb2dSZWNQdHI7CisJc3RhdGljIFhMb2dSZWNQdHIgcHJldkZsdXNoUHRyID0gSW52YWxp ZFhMb2dSZWNQdHI7CisJc3RhdGljIFhMb2dSZWNQdHIgcHJldkFwcGx5UHRyID0gSW52YWxpZFhM b2dSZWNQdHI7CiAKIAkvKiB0aGUgY2FsbGVyIGFscmVhZHkgY29uc3VtZWQgdGhlIG1zZ3R5cGUg Ynl0ZSAqLwogCXdyaXRlUHRyID0gcHFfZ2V0bXNnaW50NjQoJnJlcGx5X21lc3NhZ2UpOwpAQCAt MjUwNSwyMiArMjUwNywyMyBAQCBQcm9jZXNzU3RhbmRieVJlcGx5TWVzc2FnZSh2b2lkKQogCWFw cGx5TGFnID0gTGFnVHJhY2tlclJlYWQoU1lOQ19SRVBfV0FJVF9BUFBMWSwgYXBwbHlQdHIsIG5v dyk7CiAKIAkvKgotCSAqIElmIHRoZSBzdGFuZGJ5IHJlcG9ydHMgdGhhdCBpdCBoYXMgZnVsbHkg cmVwbGF5ZWQgdGhlIFdBTCBpbiB0d28KLQkgKiBjb25zZWN1dGl2ZSByZXBseSBtZXNzYWdlcywg dGhlbiB0aGUgc2Vjb25kIHN1Y2ggbWVzc2FnZSBtdXN0IHJlc3VsdAotCSAqIGZyb20gd2FsX3Jl Y2VpdmVyX3N0YXR1c19pbnRlcnZhbCBleHBpcmluZyBvbiB0aGUgc3RhbmRieS4gIFRoaXMgaXMg YQotCSAqIGNvbnZlbmllbnQgdGltZSB0byBmb3JnZXQgdGhlIGxhZyB0aW1lcyBtZWFzdXJlZCB3 aGVuIGl0IGxhc3QKLQkgKiB3cm90ZS9mbHVzaGVkL2FwcGxpZWQgYSBXQUwgcmVjb3JkLCB0byBh dm9pZCBkaXNwbGF5aW5nIHN0YWxlIGxhZyBkYXRhCi0JICogdW50aWwgbW9yZSBXQUwgdHJhZmZp YyBhcnJpdmVzLgorCSAqIElmIHRoZSBzdGFuZGJ5IHJlcG9ydHMgdGhhdCBpdCBoYXMgZnVsbHkg cmVwbGF5ZWQgdGhlIFdBTCwgYW5kIHRoZQorCSAqIHdyaXRlL2ZsdXNoL2FwcGx5IHBvc2l0aW9u cyByZW1haW4gdW5jaGFuZ2VkIGFjcm9zcyB0d28gY29uc2VjdXRpdmUKKwkgKiByZXBseSBtZXNz YWdlcywgZm9yZ2V0IHRoZSBsYWcgdGltZXMgbWVhc3VyZWQgd2hlbiBpdCBsYXN0CisJICogd3Jv dGUvZmx1c2hlZC9hcHBsaWVkIGEgV0FMIHJlY29yZC4KKwkgKgorCSAqIFRoZSBzZWNvbmQgbWVz c2FnZSB3aXRoIHVuY2hhbmdlZCBwb3NpdGlvbnMgdHlwaWNhbGx5IHJlc3VsdHMgZnJvbQorCSAq IHdhbF9yZWNlaXZlcl9zdGF0dXNfaW50ZXJ2YWwgZXhwaXJpbmcgb24gdGhlIHN0YW5kYnksIHNv IGxhZyB2YWx1ZXMgYXJlCisJICogdXN1YWxseSBjbGVhcmVkIGFmdGVyIHRoYXQgaW50ZXJ2YWwg d2hlbiB0aGVyZSBpcyBubyBhY3Rpdml0eS4gVGhpcworCSAqIGF2b2lkcyBkaXNwbGF5aW5nIHN0 YWxlIGxhZyBkYXRhIHVudGlsIG1vcmUgV0FMIHRyYWZmaWMgYXJyaXZlcy4KIAkgKi8KLQljbGVh ckxhZ1RpbWVzID0gZmFsc2U7Ci0JaWYgKGFwcGx5UHRyID09IHNlbnRQdHIpCi0JewotCQlpZiAo ZnVsbHlBcHBsaWVkTGFzdFRpbWUpCi0JCQljbGVhckxhZ1RpbWVzID0gdHJ1ZTsKLQkJZnVsbHlB cHBsaWVkTGFzdFRpbWUgPSB0cnVlOwotCX0KLQllbHNlCi0JCWZ1bGx5QXBwbGllZExhc3RUaW1l ID0gZmFsc2U7CisJY2xlYXJMYWdUaW1lcyA9IChhcHBseVB0ciA9PSBzZW50UHRyICYmIGZsdXNo UHRyID09IHNlbnRQdHIgJiYKKwkJCQkJIHdyaXRlUHRyID09IHByZXZXcml0ZVB0ciAmJiBmbHVz aFB0ciA9PSBwcmV2Rmx1c2hQdHIgJiYKKwkJCQkJIGFwcGx5UHRyID09IHByZXZBcHBseVB0cik7 CisKKwlwcmV2V3JpdGVQdHIgPSB3cml0ZVB0cjsKKwlwcmV2Rmx1c2hQdHIgPSBmbHVzaFB0cjsK KwlwcmV2QXBwbHlQdHIgPSBhcHBseVB0cjsKIAogCS8qIFNlbmQgYSByZXBseSBpZiB0aGUgc3Rh bmRieSByZXF1ZXN0ZWQgb25lLiAqLwogCWlmIChyZXBseVJlcXVlc3RlZCkKLS0gCjIuNTEuMgoK --00000000000034038a064ddaf434--