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 1wXW9y-003JGK-0K for pgsql-bugs@arkaria.postgresql.org; Thu, 11 Jun 2026 03:32:50 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wXW8w-00E72D-1l for pgsql-bugs@arkaria.postgresql.org; Thu, 11 Jun 2026 03:31:46 +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 1wXW8w-00E724-07 for pgsql-bugs@lists.postgresql.org; Thu, 11 Jun 2026 03:31:46 +0000 Received: from mail-oo1-xc34.google.com ([2607:f8b0:4864:20::c34]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wXW8t-000000027Fn-1cK2 for pgsql-bugs@lists.postgresql.org; Thu, 11 Jun 2026 03:31:44 +0000 Received: by mail-oo1-xc34.google.com with SMTP id 006d021491bc7-69e4adf9ea5so3743333eaf.2 for ; Wed, 10 Jun 2026 20:31:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1781148702; cv=none; d=google.com; s=arc-20240605; b=cpTgNaK0wRWA5bCBAfGgVfCHbyK2TCk9Bouku3BbjLxndZDLN/92zIo9jMz8TWokSH k5PZpDDPTJOHhhSmoYgTU1NK51ikXAtsszz5+ofzcAFe3JUKmp4lZKOQ6knI2KP6OQBo uZwj9LJoiKSAO/F+eFCG4eviLoD4o0ZPRIPz4QogH+qu7hchRjupXfn9I9vvxHnPvNC6 G0NdHdMInA60HUp0XnyRhNmrqFFgR+YZVVJaX487C4Vr8vOJlQ/3fKMxusejVFTLV3wK j71tXW9H9TYDLB+YepqYRX/UbyezFxm3NzRwaVXiD+wvdA47Q2LEr/mTRckV6xQkBmEA NkMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=g6MSyVAXfFMHG9CCWNeIH+yZsFWKwOljCpNCasWFw4I=; fh=cQ9NrfTwLdnrcM64j0MhqN2WtHcegG2l7gabVLRTHrM=; b=C2778lkBvD4Ra6ZB/T6SLe8hPu294o/DeoyKZozLyP/p+21e2f56vrKllq9sZE6BNq Io2BpK3FMPjiqtQcCavPjwfs0mKKXAAJs4o8PoLZ0CHtRpTQTrDq6ivakVyy/Ixkl4LE XlF+rRXoo2XoCbJZIEECQHGdxn68/AVeSqZqjewNIuH5vSewMeknf0cnKaBQtlIRQXxU R2oEfFK/M859i4Q7uslEF36lpp/iDe6Wbrzcl68TslD9RuTv7g6k/wYsuv8oAnLajgtL 9T8TYtQQ0IlRdj/JVV1T8e/KqoKM1rY8Z0tvoYblWEQocz+fl9LxuALhLXRTgZzz3S0G XTIQ==; 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=1781148702; x=1781753502; darn=lists.postgresql.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=g6MSyVAXfFMHG9CCWNeIH+yZsFWKwOljCpNCasWFw4I=; b=cqyBej7+R55jRQ4IogUJ/bFyWmJqRnD4EdOx9AP/IOQz4jWd/Sm3nRRJXsob4JXHhw eH2V1qEU5RSLS67dKhJbIfv2mdJUIcBXAJGnk+BGib/kXUAK/1lFjXvsX16zp+7J4WaB FGe2hnR8EsMMjVUyrClWDmcFfWF5+qADo67U/ugBW8FPxZyscFuM4OGdpSqX8ww8deat DgZFyhHd6EXeREzXsfm0MFmy2DRMntlEoroSGRZO775aLwrNiRpQlhRB8zIbRW4l31k6 zcig2fS8dE/8/LoPiKS2dYJAXv88WEQAOiUrY3go3dZWiVcfe4fPrV8fw3HEKhs1qekq pNSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781148702; x=1781753502; h=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=g6MSyVAXfFMHG9CCWNeIH+yZsFWKwOljCpNCasWFw4I=; b=Iqc7Q6z4vCJdbMhcjBWt5yDEklSFjD1boJ394jWJDl7ced5iE+3jnNJ8HiO9vAR4f3 8usbP2jva3jyDVIn1X9OSGIbWxEt7JGqKTerjTQ08YCt7HLmd7pkYZ30KMe7CQluILKc 8rW/G+v2SPe2ovIMRe+Kza8LCkiTi7M4qwEgfJQu7eYwtj99TPL7pt//rB0/sCXBu6qQ WmsFgDmTCN72zvK7Swhv5mfUaZvGT9Rh3XIuqi/fAXUzTX0ecNI4hVUxEwgTv5DloYuw H0roIorupGkQxU4jqscE2iA8UogQiyK//GDNJkIwx0sbYRT8mg+h5fb2fOJmtbiPZQ+0 1Q5A== X-Forwarded-Encrypted: i=1; AFNElJ+J9CnNpqwns3JIbH0rlnUz5LKpbUb8R+mqWClkotEbkJU+gcnz6CT0VYKtaS7uVoHc0c7eCGO02xii@lists.postgresql.org X-Gm-Message-State: AOJu0YwLU5Om1jD3BFxii7cP6R8xPKdqu8OoO3pgZlswjiKf2tb4hoqY JjJnzTj7maZvaNEJHP1vRQFbjNU6rU6/8sk/pi8F3MAd0G5I8g+mTJzgFO4I29faQP+u+pEu5a8 qxnSPGDNg2XzaTXqZHJlqiPd9mWO15H+QSM9kBRg= X-Gm-Gg: Acq92OHBXmdYuWWiDZgf9tbyYjyl/C1uwp3eE3YSdQ7OtuVe/4kHAt/5KaJH28jZfWi 6ACDLGw3CgXCKx+GpI5qJ8Cg/o+pVtRgoO46SbI1hDGS+/vEEL0lDTwflzlhkZH3JsSAJXQ4WGI xyY6jBgJFex5pMwzfLMzpTxQNkX4LqENtFlq3TFsVnxZYo2b5qInSSXgcsMaOdoxPPZMhA/ELN6 V8qa+vIm72XVcW4ZNPtqp7DtluMBq/uOy+m+ZovuUpO9judPB9B5Nx1eOugvJrLiJpJgzInjcxc ewLf2wk1J7HgkWnnl0nKRyI0uroQU7tqjnTteXHRH3JZuhdAxpOs X-Received: by 2002:a05:6820:1694:b0:69e:3e2a:a83d with SMTP id 006d021491bc7-69ecaee076dmr802847eaf.32.1781148701682; Wed, 10 Jun 2026 20:31:41 -0700 (PDT) MIME-Version: 1.0 References: <18876-0d0b53bad5a1f4c1@postgresql.org> In-Reply-To: <18876-0d0b53bad5a1f4c1@postgresql.org> From: Fujii Masao Date: Thu, 11 Jun 2026 12:31:28 +0900 X-Gm-Features: AVVi8CcU8i0xe2-gnDwAZml4_ExUblP5pkcymNR_cgV7zEc1VrxlSCv2KqiJBNw Message-ID: Subject: Re: BUG #18876: HINT messages for mxid wrap-around say "drop stale slots", but that may not be appropriate To: harukat@sraoss.co.jp, pgsql-bugs@lists.postgresql.org Content-Type: multipart/mixed; boundary="000000000000a854460653f1ff1c" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000a854460653f1ff1c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Apr 4, 2025 at 10:30=E2=80=AFPM PG Bug reporting form wrote: > > The following bug has been logged on the website: > > Bug reference: 18876 > Logged by: TAKATSUKA Haruka > Email address: harukat@sraoss.co.jp > PostgreSQL version: 17.4 > Operating system: any > Description: > > In src/backend/access/transam/multixact.c, there are the following hint > messages: > > "Execute a database-wide VACUUM in that database.\n" > "You might also need to commit or roll back old prepared transactions, = or > drop stale replication slots." > > "To avoid MultiXactId assignment failures, execute a database-wide VACU= UM > in that database.\n" > "You might also need to commit or roll back old prepared transactions, = or > drop stale replication slots." > > I think that their "drop stale replication slots" is not appropriate. > > Because NewRelminMxid is determined by GetOldestMultiXactId() and its > comment says: > * Return the oldest MultiXactId that's still possibly still seen as li= ve > by > * any running transaction. Older ones might still exist on disk, but > they no > * longer have any running member transaction. > > Thus, the presence of an old mxid in a tuple pending removal by a slot is > not considered to affect it. > > In addition, as far as I have tested, leaving the old inactive replicatio= n > slot does not cause mxid_age(relminmxid) not to decrease after VACUUM. I think you're right. So I prepared and attached a patch that refines the MXID wraparound hint messages. The patch also updates the documentation to clarify the relationship between replication slots and MXID wraparound. Thought? Regards, --=20 Fujii Masao --000000000000a854460653f1ff1c Content-Type: text/plain; charset="UTF-8"; name="v1-0001-PG16-Refine-MultiXact-wraparound-hints.txt" Content-Disposition: attachment; filename="v1-0001-PG16-Refine-MultiXact-wraparound-hints.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mq8xxm0b1 RnJvbSA4NGZlMDI1Y2M1NTkyZDdlMDFiYTc3YjRiMmM1ZWVhOGQ4ZDVmMzVkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAibWFzYW8uZnVqaWkiIDxtYXNhby5mdWppaUBtYXNhby5mdWpp aeKAmXMtTWFjQm9vay1Qcm8+CkRhdGU6IFRodSwgMTEgSnVuIDIwMjYgMTE6MTg6MDAgKzA5MDAK U3ViamVjdDogW1BBVENIIHYxXSBSZWZpbmUgTXVsdGlYYWN0IHdyYXBhcm91bmQgaGludHMKClJl cGxpY2F0aW9uIHNsb3RzIGNhbiBob2xkIGJhY2sgWElEIGhvcml6b25zLCBidXQgdGhleSBkbyBu b3QgcHJldmVudApNdWx0aVhhY3QgY2xlYW51cC4gVGhlcmVmb3JlLCB0aGlzIGNvbW1pdCByZW1v dmVzIHJlcGxpY2F0aW9uIHNsb3QKYWR2aWNlIGZyb20gTXVsdGlYYWN0IHdyYXBhcm91bmQgaGlu dCBtZXNzYWdlcyBhbmQgdXBkYXRlCnRoZSBtYWludGVuYW5jZSBkb2N1bWVudGF0aW9uIHRvIGNs YXJpZnkgdGhlIGRpc3RpbmN0aW9uLgoKQmFja3BhdGNoIHRvIGFsbCBzdXBwb3J0ZWQgdmVyc2lv bnMuCi0tLQogZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgICAgICAgICAgfCAgNiArKysr KysKIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIHwgMTIgKysrKysrLS0t LS0tCiBzcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYyAgICAgICAgICB8ICAyICstCiAzIGZp bGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgYi9kb2Mvc3JjL3NnbWwvbWFpbnRlbmFu Y2Uuc2dtbAppbmRleCBkNmQ0NGQ3NDA2OS4uMjA1NTIzMTc4OTEgMTAwNjQ0Ci0tLSBhL2RvYy9z cmMvc2dtbC9tYWludGVuYW5jZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9tYWludGVuYW5jZS5z Z21sCkBAIC04MjAsNiArODIwLDEyIEBAIEhJTlQ6ICBTdG9wIHRoZSBwb3N0bWFzdGVyIGFuZCB2 YWN1dW0gdGhhdCBkYXRhYmFzZSBpbiBzaW5nbGUtdXNlciBtb2RlLgogICAgICAgPHNpbXBhcmE+ UnVubmluZyB0cmFuc2FjdGlvbnMgYW5kIHByZXBhcmVkIHRyYW5zYWN0aW9ucyBjYW4gYmUgaWdu b3JlZCBpZiB0aGVyZQogICAgICAgIGlzIG5vIGNoYW5jZSB0aGF0IHRoZXkgbWlnaHQgYXBwZWFy IGluIGEgbXVsdGl4YWN0Ljwvc2ltcGFyYT4KICAgICAgPC9saXN0aXRlbT4KKyAgICAgPGxpc3Rp dGVtPgorICAgICAgPHNpbXBhcmE+VW5saWtlIHRyYW5zYWN0aW9uIElEIHdyYXBhcm91bmQsIHJl cGxpY2F0aW9uIHNsb3RzIGRvIG5vdAorICAgICAgIGRpcmVjdGx5IGhvbGQgYmFjayBtdWx0aXhh Y3QgY2xlYW51cC4gRHJvcHBpbmcgc3RhbGUgcmVwbGljYXRpb24KKyAgICAgICBzbG90cyBpcyB0 aGVyZWZvcmUgbm90IHVzdWFsbHkgcmVsZXZhbnQgdG8gcmVzb2x2aW5nIG11bHRpeGFjdCBJRAor ICAgICAgIHdyYXBhcm91bmQgcHJvYmxlbXMuPC9zaW1wYXJhPgorICAgICA8L2xpc3RpdGVtPgog ICAgICA8bGlzdGl0ZW0+CiAgICAgICA8c2ltcGFyYT5NWElEIGluZm9ybWF0aW9uIGlzIG5vdCBk aXJlY3RseSB2aXNpYmxlIGluIHN5c3RlbSB2aWV3cyBzdWNoIGFzCiAgICAgICAgPGxpdGVyYWw+ cGdfc3RhdF9hY3Rpdml0eTwvbGl0ZXJhbD47IGhvd2V2ZXIsIGxvb2tpbmcgZm9yIG9sZCBYSURz IGlzIHN0aWxsIGEgZ29vZApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0v bXVsdGl4YWN0LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYwppbmRl eCA4NDA4NDkyODc5Yi4uMDc3OGE3YzliODAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vz cy90cmFuc2FtL211bHRpeGFjdC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211 bHRpeGFjdC5jCkBAIC0xMTU5LDE0ICsxMTU5LDE0IEBAIEdldE5ld011bHRpWGFjdElkKGludCBu bWVtYmVycywgTXVsdGlYYWN0T2Zmc2V0ICpvZmZzZXQpCiAJCQkJCQkgZXJybXNnKCJkYXRhYmFz ZSBpcyBub3QgYWNjZXB0aW5nIGNvbW1hbmRzIHRoYXQgZ2VuZXJhdGUgbmV3IE11bHRpWGFjdElk cyB0byBhdm9pZCB3cmFwYXJvdW5kIGRhdGEgbG9zcyBpbiBkYXRhYmFzZSBcIiVzXCIiLAogCQkJ CQkJCQlvbGRlc3RfZGF0bmFtZSksCiAJCQkJCQkgZXJyaGludCgiRXhlY3V0ZSBhIGRhdGFiYXNl LXdpZGUgVkFDVVVNIGluIHRoYXQgZGF0YWJhc2UuXG4iCi0JCQkJCQkJCSAiWW91IG1pZ2h0IGFs c28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0cmFuc2FjdGlvbnMs IG9yIGRyb3Agc3RhbGUgcmVwbGljYXRpb24gc2xvdHMuIikpKTsKKwkJCQkJCQkJICJZb3UgbWln aHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0 aW9ucy4iKSkpOwogCQkJZWxzZQogCQkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCQkoZXJyY29kZShF UlJDT0RFX1BST0dSQU1fTElNSVRfRVhDRUVERUQpLAogCQkJCQkJIGVycm1zZygiZGF0YWJhc2Ug aXMgbm90IGFjY2VwdGluZyBjb21tYW5kcyB0aGF0IGdlbmVyYXRlIG5ldyBNdWx0aVhhY3RJZHMg dG8gYXZvaWQgd3JhcGFyb3VuZCBkYXRhIGxvc3MgaW4gZGF0YWJhc2Ugd2l0aCBPSUQgJXUiLAog CQkJCQkJCQlvbGRlc3RfZGF0b2lkKSwKIAkJCQkJCSBlcnJoaW50KCJFeGVjdXRlIGEgZGF0YWJh c2Utd2lkZSBWQUNVVU0gaW4gdGhhdCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkJICJZb3UgbWlnaHQg YWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9u cywgb3IgZHJvcCBzdGFsZSByZXBsaWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJCQkgIllvdSBt aWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNh Y3Rpb25zLiIpKSk7CiAJCX0KIAogCQkvKgpAQCAtMTE5MCw3ICsxMTkwLDcgQEAgR2V0TmV3TXVs dGlYYWN0SWQoaW50IG5tZW1iZXJzLCBNdWx0aVhhY3RPZmZzZXQgKm9mZnNldCkKIAkJCQkJCQkJ CSAgIG9sZGVzdF9kYXRuYW1lLAogCQkJCQkJCQkJICAgbXVsdGlXcmFwTGltaXQgLSByZXN1bHQp LAogCQkJCQkJIGVycmhpbnQoIkV4ZWN1dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0 IGRhdGFiYXNlLlxuIgotCQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9y IHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxp Y2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJCSAiWW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21t aXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0cmFuc2FjdGlvbnMuIikpKTsKIAkJCWVsc2UK IAkJCQllcmVwb3J0KFdBUk5JTkcsCiAJCQkJCQkoZXJybXNnX3BsdXJhbCgiZGF0YWJhc2Ugd2l0 aCBPSUQgJXUgbXVzdCBiZSB2YWN1dW1lZCBiZWZvcmUgJXUgbW9yZSBNdWx0aVhhY3RJZCBpcyB1 c2VkIiwKQEAgLTExOTksNyArMTE5OSw3IEBAIEdldE5ld011bHRpWGFjdElkKGludCBubWVtYmVy cywgTXVsdGlYYWN0T2Zmc2V0ICpvZmZzZXQpCiAJCQkJCQkJCQkgICBvbGRlc3RfZGF0b2lkLAog CQkJCQkJCQkJICAgbXVsdGlXcmFwTGltaXQgLSByZXN1bHQpLAogCQkJCQkJIGVycmhpbnQoIkV4 ZWN1dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0IGRhdGFiYXNlLlxuIgotCQkJCQkJ CQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFy ZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxpY2F0aW9uIHNsb3RzLiIpKSk7CisJ CQkJCQkJCSAiWW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBw cmVwYXJlZCB0cmFuc2FjdGlvbnMuIikpKTsKIAkJfQogCiAJCS8qIFJlLWFjcXVpcmUgbG9jayBh bmQgc3RhcnQgb3ZlciAqLwpAQCAtMjQ3NSw3ICsyNDc1LDcgQEAgU2V0TXVsdGlYYWN0SWRMaW1p dChNdWx0aVhhY3RJZCBvbGRlc3RfZGF0bWlubXhpZCwgT2lkIG9sZGVzdF9kYXRvaWQsCiAJCQkJ CQkJCSAgIG9sZGVzdF9kYXRuYW1lLAogCQkJCQkJCQkgICBtdWx0aVdyYXBMaW1pdCAtIGN1ck11 bHRpKSwKIAkJCQkJIGVycmhpbnQoIlRvIGF2b2lkIGEgZGF0YWJhc2Ugc2h1dGRvd24sIGV4ZWN1 dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0IGRhdGFiYXNlLlxuIgotCQkJCQkJCSAi WW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0 cmFuc2FjdGlvbnMsIG9yIGRyb3Agc3RhbGUgcmVwbGljYXRpb24gc2xvdHMuIikpKTsKKwkJCQkJ CQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFy ZWQgdHJhbnNhY3Rpb25zLiIpKSk7CiAJCWVsc2UKIAkJCWVyZXBvcnQoV0FSTklORywKIAkJCQkJ KGVycm1zZ19wbHVyYWwoImRhdGFiYXNlIHdpdGggT0lEICV1IG11c3QgYmUgdmFjdXVtZWQgYmVm b3JlICV1IG1vcmUgTXVsdGlYYWN0SWQgaXMgdXNlZCIsCkBAIC0yNDg0LDcgKzI0ODQsNyBAQCBT ZXRNdWx0aVhhY3RJZExpbWl0KE11bHRpWGFjdElkIG9sZGVzdF9kYXRtaW5teGlkLCBPaWQgb2xk ZXN0X2RhdG9pZCwKIAkJCQkJCQkJICAgb2xkZXN0X2RhdG9pZCwKIAkJCQkJCQkJICAgbXVsdGlX cmFwTGltaXQgLSBjdXJNdWx0aSksCiAJCQkJCSBlcnJoaW50KCJUbyBhdm9pZCBhIGRhdGFiYXNl IHNodXRkb3duLCBleGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBWQUNVVU0gaW4gdGhhdCBkYXRhYmFz ZS5cbiIKLQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFj ayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxpY2F0aW9uIHNs b3RzLiIpKSk7CisJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xs IGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucy4iKSkpOwogCX0KIH0KIApkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVtLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy92 YWN1dW0uYwppbmRleCA2YzMyMDhlZWI4NC4uMzE4NTA2MmJmMTYgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2NvbW1hbmRzL3ZhY3V1bS5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1 bS5jCkBAIC0xMTc2LDcgKzExNzYsNyBAQCB2YWN1dW1fZ2V0X2N1dG9mZnMoUmVsYXRpb24gcmVs LCBjb25zdCBWYWN1dW1QYXJhbXMgKnBhcmFtcywKIAkJZXJlcG9ydChXQVJOSU5HLAogCQkJCShl cnJtc2coImN1dG9mZiBmb3IgZnJlZXppbmcgbXVsdGl4YWN0cyBpcyBmYXIgaW4gdGhlIHBhc3Qi KSwKIAkJCQkgZXJyaGludCgiQ2xvc2Ugb3BlbiB0cmFuc2FjdGlvbnMgc29vbiB0byBhdm9pZCB3 cmFwYXJvdW5kIHByb2JsZW1zLlxuIgotCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNv bW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucywgb3IgZHJvcCBzdGFs ZSByZXBsaWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRv IGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucy4iKSkpOwogCiAJ LyoKIAkgKiBEZXRlcm1pbmUgdGhlIG1pbmltdW0gZnJlZXplIGFnZSB0byB1c2U6IGFzIHNwZWNp ZmllZCBieSB0aGUgY2FsbGVyLCBvcgotLSAKMi41My4wCgo= --000000000000a854460653f1ff1c Content-Type: application/octet-stream; name="v1-0001-Refine-MultiXact-wraparound-hints.patch" Content-Disposition: attachment; filename="v1-0001-Refine-MultiXact-wraparound-hints.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mq8xxm0k2 RnJvbSBiNjUyOWQ4MGI2YWE3NTE0YzVjNDNhMmU5ZjY5Y2FmMzVlNjY2YWY0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAibWFzYW8uZnVqaWkiIDxtYXNhby5mdWppaUBtYXNhby5mdWpp aeKAmXMtTWFjQm9vay1Qcm8+CkRhdGU6IFRodSwgMTEgSnVuIDIwMjYgMTE6MTg6MDAgKzA5MDAK U3ViamVjdDogW1BBVENIIHYxXSBSZWZpbmUgTXVsdGlYYWN0IHdyYXBhcm91bmQgaGludHMKClJl cGxpY2F0aW9uIHNsb3RzIGNhbiBob2xkIGJhY2sgWElEIGhvcml6b25zLCBidXQgdGhleSBkbyBu b3QgcHJldmVudApNdWx0aVhhY3QgY2xlYW51cC4gVGhlcmVmb3JlLCB0aGlzIGNvbW1pdCByZW1v dmVzIHJlcGxpY2F0aW9uIHNsb3QKYWR2aWNlIGZyb20gTXVsdGlYYWN0IHdyYXBhcm91bmQgaGlu dCBtZXNzYWdlcyBhbmQgdXBkYXRlCnRoZSBtYWludGVuYW5jZSBkb2N1bWVudGF0aW9uIHRvIGNs YXJpZnkgdGhlIGRpc3RpbmN0aW9uLgoKQmFja3BhdGNoIHRvIGFsbCBzdXBwb3J0ZWQgdmVyc2lv bnMuCi0tLQogZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgICAgICAgICAgfCAgNiArKysr KysKIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIHwgMTIgKysrKysrLS0t LS0tCiBzcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYyAgICAgICAgICB8ICAyICstCiAzIGZp bGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgYi9kb2Mvc3JjL3NnbWwvbWFpbnRlbmFu Y2Uuc2dtbAppbmRleCA0YTIxYmRiNWRlNy4uZWM0MjA0Zjg4ZDkgMTAwNjQ0Ci0tLSBhL2RvYy9z cmMvc2dtbC9tYWludGVuYW5jZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9tYWludGVuYW5jZS5z Z21sCkBAIC04NjksNiArODY5LDEyIEBAIEhJTlQ6ICBFeGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBW QUNVVU0gaW4gdGhhdCBkYXRhYmFzZS4KICAgICAgIDxzaW1wYXJhPlJ1bm5pbmcgdHJhbnNhY3Rp b25zIGFuZCBwcmVwYXJlZCB0cmFuc2FjdGlvbnMgY2FuIGJlIGlnbm9yZWQgaWYgdGhlcmUKICAg ICAgICBpcyBubyBjaGFuY2UgdGhhdCB0aGV5IG1pZ2h0IGFwcGVhciBpbiBhIG11bHRpeGFjdC48 L3NpbXBhcmE+CiAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDxsaXN0aXRlbT4KKyAgICAgIDxzaW1w YXJhPlVubGlrZSB0cmFuc2FjdGlvbiBJRCB3cmFwYXJvdW5kLCByZXBsaWNhdGlvbiBzbG90cyBk byBub3QKKyAgICAgICBkaXJlY3RseSBob2xkIGJhY2sgbXVsdGl4YWN0IGNsZWFudXAuIERyb3Bw aW5nIHN0YWxlIHJlcGxpY2F0aW9uCisgICAgICAgc2xvdHMgaXMgdGhlcmVmb3JlIG5vdCB1c3Vh bGx5IHJlbGV2YW50IHRvIHJlc29sdmluZyBtdWx0aXhhY3QgSUQKKyAgICAgICB3cmFwYXJvdW5k IHByb2JsZW1zLjwvc2ltcGFyYT4KKyAgICAgPC9saXN0aXRlbT4KICAgICAgPGxpc3RpdGVtPgog ICAgICAgPHNpbXBhcmE+TVhJRCBpbmZvcm1hdGlvbiBpcyBub3QgZGlyZWN0bHkgdmlzaWJsZSBp biBzeXN0ZW0gdmlld3Mgc3VjaCBhcwogICAgICAgIDxsaXRlcmFsPnBnX3N0YXRfYWN0aXZpdHk8 L2xpdGVyYWw+OyBob3dldmVyLCBsb29raW5nIGZvciBvbGQgWElEcyBpcyBzdGlsbCBhIGdvb2QK ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIGIvc3Jj L2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMKaW5kZXggMTBjYmMwZDc2YmQuLjhj Njk0NjU4MTMyIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhh Y3QuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYwpAQCAtMTA0 MCwxNCArMTA0MCwxNCBAQCBHZXROZXdNdWx0aVhhY3RJZChpbnQgbm1lbWJlcnMsIE11bHRpWGFj dE9mZnNldCAqb2Zmc2V0KQogCQkJCQkJIGVycm1zZygiZGF0YWJhc2UgaXMgbm90IGFjY2VwdGlu ZyBjb21tYW5kcyB0aGF0IGFzc2lnbiBuZXcgTXVsdGlYYWN0SWRzIHRvIGF2b2lkIHdyYXBhcm91 bmQgZGF0YSBsb3NzIGluIGRhdGFiYXNlIFwiJXNcIiIsCiAJCQkJCQkJCW9sZGVzdF9kYXRuYW1l KSwKIAkJCQkJCSBlcnJoaW50KCJFeGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBWQUNVVU0gaW4gdGhh dCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBv ciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucywgb3IgZHJvcCBzdGFsZSByZXBs aWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29t bWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLiIpKSk7CiAJCQllbHNl CiAJCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJCShlcnJjb2RlKEVSUkNPREVfUFJPR1JBTV9MSU1J VF9FWENFRURFRCksCiAJCQkJCQkgZXJybXNnKCJkYXRhYmFzZSBpcyBub3QgYWNjZXB0aW5nIGNv bW1hbmRzIHRoYXQgYXNzaWduIG5ldyBNdWx0aVhhY3RJZHMgdG8gYXZvaWQgd3JhcGFyb3VuZCBk YXRhIGxvc3MgaW4gZGF0YWJhc2Ugd2l0aCBPSUQgJXUiLAogCQkJCQkJCQlvbGRlc3RfZGF0b2lk KSwKIAkJCQkJCSBlcnJoaW50KCJFeGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBWQUNVVU0gaW4gdGhh dCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBv ciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucywgb3IgZHJvcCBzdGFsZSByZXBs aWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29t bWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLiIpKSk7CiAJCX0KIAog CQkvKgpAQCAtMTA3Myw3ICsxMDczLDcgQEAgR2V0TmV3TXVsdGlYYWN0SWQoaW50IG5tZW1iZXJz LCBNdWx0aVhhY3RPZmZzZXQgKm9mZnNldCkKIAkJCQkJCSBlcnJkZXRhaWwoIkFwcHJveGltYXRl bHkgJS4yZiUlIG9mIE11bHRpWGFjdElkcyBhcmUgYXZhaWxhYmxlIGZvciB1c2UuIiwKIAkJCQkJ CQkJICAgKGRvdWJsZSkgKG11bHRpV3JhcExpbWl0IC0gcmVzdWx0KSAvIChNYXhNdWx0aVhhY3RJ ZCAvIDIpICogMTAwKSwKIAkJCQkJCSBlcnJoaW50KCJFeGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBW QUNVVU0gaW4gdGhhdCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVk IHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucywgb3IgZHJv cCBzdGFsZSByZXBsaWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJCQkgIllvdSBtaWdodCBhbHNv IG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLiIp KSk7CiAJCQllbHNlCiAJCQkJZXJlcG9ydChXQVJOSU5HLAogCQkJCQkJKGVycm1zZ19wbHVyYWwo ImRhdGFiYXNlIHdpdGggT0lEICV1IG11c3QgYmUgdmFjdXVtZWQgYmVmb3JlICV1IG1vcmUgTXVs dGlYYWN0SWQgaXMgdXNlZCIsCkBAIC0xMDg0LDcgKzEwODQsNyBAQCBHZXROZXdNdWx0aVhhY3RJ ZChpbnQgbm1lbWJlcnMsIE11bHRpWGFjdE9mZnNldCAqb2Zmc2V0KQogCQkJCQkJIGVycmRldGFp bCgiQXBwcm94aW1hdGVseSAlLjJmJSUgb2YgTXVsdGlYYWN0SWRzIGFyZSBhdmFpbGFibGUgZm9y IHVzZS4iLAogCQkJCQkJCQkgICAoZG91YmxlKSAobXVsdGlXcmFwTGltaXQgLSByZXN1bHQpIC8g KE1heE11bHRpWGFjdElkIC8gMikgKiAxMDApLAogCQkJCQkJIGVycmhpbnQoIkV4ZWN1dGUgYSBk YXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0IGRhdGFiYXNlLlxuIgotCQkJCQkJCQkgIllvdSBt aWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNh Y3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxpY2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJCSAi WW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0 cmFuc2FjdGlvbnMuIikpKTsKIAkJfQogCiAJCS8qIFJlLWFjcXVpcmUgbG9jayBhbmQgc3RhcnQg b3ZlciAqLwpAQCAtMjIxMSw3ICsyMjExLDcgQEAgU2V0TXVsdGlYYWN0SWRMaW1pdChNdWx0aVhh Y3RJZCBvbGRlc3RfZGF0bWlubXhpZCwgT2lkIG9sZGVzdF9kYXRvaWQpCiAJCQkJCSBlcnJkZXRh aWwoIkFwcHJveGltYXRlbHkgJS4yZiUlIG9mIE11bHRpWGFjdElkcyBhcmUgYXZhaWxhYmxlIGZv ciB1c2UuIiwKIAkJCQkJCQkgICAoZG91YmxlKSAobXVsdGlXcmFwTGltaXQgLSBjdXJNdWx0aSkg LyAoTWF4TXVsdGlYYWN0SWQgLyAyKSAqIDEwMCksCiAJCQkJCSBlcnJoaW50KCJUbyBhdm9pZCBN dWx0aVhhY3RJZCBhc3NpZ25tZW50IGZhaWx1cmVzLCBleGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBW QUNVVU0gaW4gdGhhdCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQg dG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9w IHN0YWxlIHJlcGxpY2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBu ZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucy4iKSkp OwogCQllbHNlCiAJCQllcmVwb3J0KFdBUk5JTkcsCiAJCQkJCShlcnJtc2dfcGx1cmFsKCJkYXRh YmFzZSB3aXRoIE9JRCAldSBtdXN0IGJlIHZhY3V1bWVkIGJlZm9yZSAldSBtb3JlIE11bHRpWGFj dElkIGlzIHVzZWQiLApAQCAtMjIyMiw3ICsyMjIyLDcgQEAgU2V0TXVsdGlYYWN0SWRMaW1pdChN dWx0aVhhY3RJZCBvbGRlc3RfZGF0bWlubXhpZCwgT2lkIG9sZGVzdF9kYXRvaWQpCiAJCQkJCSBl cnJkZXRhaWwoIkFwcHJveGltYXRlbHkgJS4yZiUlIG9mIE11bHRpWGFjdElkcyBhcmUgYXZhaWxh YmxlIGZvciB1c2UuIiwKIAkJCQkJCQkgICAoZG91YmxlKSAobXVsdGlXcmFwTGltaXQgLSBjdXJN dWx0aSkgLyAoTWF4TXVsdGlYYWN0SWQgLyAyKSAqIDEwMCksCiAJCQkJCSBlcnJoaW50KCJUbyBh dm9pZCBNdWx0aVhhY3RJZCBhc3NpZ25tZW50IGZhaWx1cmVzLCBleGVjdXRlIGEgZGF0YWJhc2Ut d2lkZSBWQUNVVU0gaW4gdGhhdCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkgIllvdSBtaWdodCBhbHNv IG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBv ciBkcm9wIHN0YWxlIHJlcGxpY2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJICJZb3UgbWlnaHQg YWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9u cy4iKSkpOwogCX0KIH0KIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVt LmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYwppbmRleCBhNGFiYjI5Y2Y2NC4uMzg1 MzlhNmZkM2QgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1bS5jCisrKyBi L3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1bS5jCkBAIC0xMTc3LDcgKzExNzcsNyBAQCB2YWN1 dW1fZ2V0X2N1dG9mZnMoUmVsYXRpb24gcmVsLCBjb25zdCBWYWN1dW1QYXJhbXMgKnBhcmFtcywK IAkJZXJlcG9ydChXQVJOSU5HLAogCQkJCShlcnJtc2coImN1dG9mZiBmb3IgZnJlZXppbmcgbXVs dGl4YWN0cyBpcyBmYXIgaW4gdGhlIHBhc3QiKSwKIAkJCQkgZXJyaGludCgiQ2xvc2Ugb3BlbiB0 cmFuc2FjdGlvbnMgc29vbiB0byBhdm9pZCB3cmFwYXJvdW5kIHByb2JsZW1zLlxuIgotCQkJCQkJ ICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVk IHRyYW5zYWN0aW9ucywgb3IgZHJvcCBzdGFsZSByZXBsaWNhdGlvbiBzbG90cy4iKSkpOworCQkJ CQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBh cmVkIHRyYW5zYWN0aW9ucy4iKSkpOwogCiAJLyoKIAkgKiBEZXRlcm1pbmUgdGhlIG1pbmltdW0g ZnJlZXplIGFnZSB0byB1c2U6IGFzIHNwZWNpZmllZCBieSB0aGUgY2FsbGVyLCBvcgotLSAKMi41 My4wCgo= --000000000000a854460653f1ff1c Content-Type: text/plain; charset="UTF-8"; name="v1-0001-PG15_PG14-Refine-MultiXact-wraparound-hints.txt" Content-Disposition: attachment; filename="v1-0001-PG15_PG14-Refine-MultiXact-wraparound-hints.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mq8xxm010 RnJvbSA4NTVhZDMzYzk3ZTQ4ZDY4ZjZlMTg4ZTVhMTEwMzZjOWU0Nzg4M2FkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAibWFzYW8uZnVqaWkiIDxtYXNhby5mdWppaUBtYXNhby5mdWpp aeKAmXMtTWFjQm9vay1Qcm8+CkRhdGU6IFRodSwgMTEgSnVuIDIwMjYgMTE6MTg6MDAgKzA5MDAK U3ViamVjdDogW1BBVENIIHYxXSBSZWZpbmUgTXVsdGlYYWN0IHdyYXBhcm91bmQgaGludHMKClJl cGxpY2F0aW9uIHNsb3RzIGNhbiBob2xkIGJhY2sgWElEIGhvcml6b25zLCBidXQgdGhleSBkbyBu b3QgcHJldmVudApNdWx0aVhhY3QgY2xlYW51cC4gVGhlcmVmb3JlLCB0aGlzIGNvbW1pdCByZW1v dmVzIHJlcGxpY2F0aW9uIHNsb3QKYWR2aWNlIGZyb20gTXVsdGlYYWN0IHdyYXBhcm91bmQgaGlu dCBtZXNzYWdlcyBhbmQgdXBkYXRlCnRoZSBtYWludGVuYW5jZSBkb2N1bWVudGF0aW9uIHRvIGNs YXJpZnkgdGhlIGRpc3RpbmN0aW9uLgoKQmFja3BhdGNoIHRvIGFsbCBzdXBwb3J0ZWQgdmVyc2lv bnMuCi0tLQogZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgICAgICAgICAgfCAgNiArKysr KysKIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIHwgMTIgKysrKysrLS0t LS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL21haW50ZW5hbmNlLnNnbWwgYi9kb2Mvc3JjL3NnbWwv bWFpbnRlbmFuY2Uuc2dtbAppbmRleCBhYTJkZjM3MWVmYi4uZGRjYThlYTQxNjYgMTAwNjQ0Ci0t LSBhL2RvYy9zcmMvc2dtbC9tYWludGVuYW5jZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9tYWlu dGVuYW5jZS5zZ21sCkBAIC04MTksNiArODE5LDEyIEBAIEhJTlQ6ICBTdG9wIHRoZSBwb3N0bWFz dGVyIGFuZCB2YWN1dW0gdGhhdCBkYXRhYmFzZSBpbiBzaW5nbGUtdXNlciBtb2RlLgogICAgICAg PHNpbXBhcmE+UnVubmluZyB0cmFuc2FjdGlvbnMgYW5kIHByZXBhcmVkIHRyYW5zYWN0aW9ucyBj YW4gYmUgaWdub3JlZCBpZiB0aGVyZQogICAgICAgIGlzIG5vIGNoYW5jZSB0aGF0IHRoZXkgbWln aHQgYXBwZWFyIGluIGEgbXVsdGl4YWN0Ljwvc2ltcGFyYT4KICAgICAgPC9saXN0aXRlbT4KKyAg ICAgPGxpc3RpdGVtPgorICAgICAgPHNpbXBhcmE+VW5saWtlIHRyYW5zYWN0aW9uIElEIHdyYXBh cm91bmQsIHJlcGxpY2F0aW9uIHNsb3RzIGRvIG5vdAorICAgICAgIGRpcmVjdGx5IGhvbGQgYmFj ayBtdWx0aXhhY3QgY2xlYW51cC4gRHJvcHBpbmcgc3RhbGUgcmVwbGljYXRpb24KKyAgICAgICBz bG90cyBpcyB0aGVyZWZvcmUgbm90IHVzdWFsbHkgcmVsZXZhbnQgdG8gcmVzb2x2aW5nIG11bHRp eGFjdCBJRAorICAgICAgIHdyYXBhcm91bmQgcHJvYmxlbXMuPC9zaW1wYXJhPgorICAgICA8L2xp c3RpdGVtPgogICAgICA8bGlzdGl0ZW0+CiAgICAgICA8c2ltcGFyYT5NWElEIGluZm9ybWF0aW9u IGlzIG5vdCBkaXJlY3RseSB2aXNpYmxlIGluIHN5c3RlbSB2aWV3cyBzdWNoIGFzCiAgICAgICAg PGxpdGVyYWw+cGdfc3RhdF9hY3Rpdml0eTwvbGl0ZXJhbD47IGhvd2V2ZXIsIGxvb2tpbmcgZm9y IG9sZCBYSURzIGlzIHN0aWxsIGEgZ29vZApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNz L3RyYW5zYW0vbXVsdGl4YWN0LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhh Y3QuYwppbmRleCA4YjUyMjBkOGFhYi4uZGZhNDcwZDIyMjggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90 cmFuc2FtL211bHRpeGFjdC5jCkBAIC0xMTU4LDE0ICsxMTU4LDE0IEBAIEdldE5ld011bHRpWGFj dElkKGludCBubWVtYmVycywgTXVsdGlYYWN0T2Zmc2V0ICpvZmZzZXQpCiAJCQkJCQkgZXJybXNn KCJkYXRhYmFzZSBpcyBub3QgYWNjZXB0aW5nIGNvbW1hbmRzIHRoYXQgZ2VuZXJhdGUgbmV3IE11 bHRpWGFjdElkcyB0byBhdm9pZCB3cmFwYXJvdW5kIGRhdGEgbG9zcyBpbiBkYXRhYmFzZSBcIiVz XCIiLAogCQkJCQkJCQlvbGRlc3RfZGF0bmFtZSksCiAJCQkJCQkgZXJyaGludCgiRXhlY3V0ZSBh IGRhdGFiYXNlLXdpZGUgVkFDVVVNIGluIHRoYXQgZGF0YWJhc2UuXG4iCi0JCQkJCQkJCSAiWW91 IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0cmFu c2FjdGlvbnMsIG9yIGRyb3Agc3RhbGUgcmVwbGljYXRpb24gc2xvdHMuIikpKTsKKwkJCQkJCQkJ ICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVk IHRyYW5zYWN0aW9ucy4iKSkpOwogCQkJZWxzZQogCQkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCQko ZXJyY29kZShFUlJDT0RFX1BST0dSQU1fTElNSVRfRVhDRUVERUQpLAogCQkJCQkJIGVycm1zZygi ZGF0YWJhc2UgaXMgbm90IGFjY2VwdGluZyBjb21tYW5kcyB0aGF0IGdlbmVyYXRlIG5ldyBNdWx0 aVhhY3RJZHMgdG8gYXZvaWQgd3JhcGFyb3VuZCBkYXRhIGxvc3MgaW4gZGF0YWJhc2Ugd2l0aCBP SUQgJXUiLAogCQkJCQkJCQlvbGRlc3RfZGF0b2lkKSwKIAkJCQkJCSBlcnJoaW50KCJFeGVjdXRl IGEgZGF0YWJhc2Utd2lkZSBWQUNVVU0gaW4gdGhhdCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkJICJZ b3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1pdCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRy YW5zYWN0aW9ucywgb3IgZHJvcCBzdGFsZSByZXBsaWNhdGlvbiBzbG90cy4iKSkpOworCQkJCQkJ CQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFy ZWQgdHJhbnNhY3Rpb25zLiIpKSk7CiAJCX0KIAogCQkvKgpAQCAtMTE4OSw3ICsxMTg5LDcgQEAg R2V0TmV3TXVsdGlYYWN0SWQoaW50IG5tZW1iZXJzLCBNdWx0aVhhY3RPZmZzZXQgKm9mZnNldCkK IAkJCQkJCQkJCSAgIG9sZGVzdF9kYXRuYW1lLAogCQkJCQkJCQkJICAgbXVsdGlXcmFwTGltaXQg LSByZXN1bHQpLAogCQkJCQkJIGVycmhpbnQoIkV4ZWN1dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VV TSBpbiB0aGF0IGRhdGFiYXNlLlxuIgotCQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8g Y29tbWl0IG9yIHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0 YWxlIHJlcGxpY2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJCSAiWW91IG1pZ2h0IGFsc28gbmVl ZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBwcmVwYXJlZCB0cmFuc2FjdGlvbnMuIikpKTsK IAkJCWVsc2UKIAkJCQllcmVwb3J0KFdBUk5JTkcsCiAJCQkJCQkoZXJybXNnX3BsdXJhbCgiZGF0 YWJhc2Ugd2l0aCBPSUQgJXUgbXVzdCBiZSB2YWN1dW1lZCBiZWZvcmUgJXUgbW9yZSBNdWx0aVhh Y3RJZCBpcyB1c2VkIiwKQEAgLTExOTgsNyArMTE5OCw3IEBAIEdldE5ld011bHRpWGFjdElkKGlu dCBubWVtYmVycywgTXVsdGlYYWN0T2Zmc2V0ICpvZmZzZXQpCiAJCQkJCQkJCQkgICBvbGRlc3Rf ZGF0b2lkLAogCQkJCQkJCQkJICAgbXVsdGlXcmFwTGltaXQgLSByZXN1bHQpLAogCQkJCQkJIGVy cmhpbnQoIkV4ZWN1dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0IGRhdGFiYXNlLlxu IgotCQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBv bGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxpY2F0aW9uIHNsb3Rz LiIpKSk7CisJCQkJCQkJCSAiWW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBi YWNrIG9sZCBwcmVwYXJlZCB0cmFuc2FjdGlvbnMuIikpKTsKIAkJfQogCiAJCS8qIFJlLWFjcXVp cmUgbG9jayBhbmQgc3RhcnQgb3ZlciAqLwpAQCAtMjQ3Niw3ICsyNDc2LDcgQEAgU2V0TXVsdGlY YWN0SWRMaW1pdChNdWx0aVhhY3RJZCBvbGRlc3RfZGF0bWlubXhpZCwgT2lkIG9sZGVzdF9kYXRv aWQsCiAJCQkJCQkJCSAgIG9sZGVzdF9kYXRuYW1lLAogCQkJCQkJCQkgICBtdWx0aVdyYXBMaW1p dCAtIGN1ck11bHRpKSwKIAkJCQkJIGVycmhpbnQoIlRvIGF2b2lkIGEgZGF0YWJhc2Ugc2h1dGRv d24sIGV4ZWN1dGUgYSBkYXRhYmFzZS13aWRlIFZBQ1VVTSBpbiB0aGF0IGRhdGFiYXNlLlxuIgot CQkJCQkJCSAiWW91IG1pZ2h0IGFsc28gbmVlZCB0byBjb21taXQgb3Igcm9sbCBiYWNrIG9sZCBw cmVwYXJlZCB0cmFuc2FjdGlvbnMsIG9yIGRyb3Agc3RhbGUgcmVwbGljYXRpb24gc2xvdHMuIikp KTsKKwkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9yIHJvbGwgYmFjayBv bGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLiIpKSk7CiAJCWVsc2UKIAkJCWVyZXBvcnQoV0FSTklO RywKIAkJCQkJKGVycm1zZ19wbHVyYWwoImRhdGFiYXNlIHdpdGggT0lEICV1IG11c3QgYmUgdmFj dXVtZWQgYmVmb3JlICV1IG1vcmUgTXVsdGlYYWN0SWQgaXMgdXNlZCIsCkBAIC0yNDg1LDcgKzI0 ODUsNyBAQCBTZXRNdWx0aVhhY3RJZExpbWl0KE11bHRpWGFjdElkIG9sZGVzdF9kYXRtaW5teGlk LCBPaWQgb2xkZXN0X2RhdG9pZCwKIAkJCQkJCQkJICAgb2xkZXN0X2RhdG9pZCwKIAkJCQkJCQkJ ICAgbXVsdGlXcmFwTGltaXQgLSBjdXJNdWx0aSksCiAJCQkJCSBlcnJoaW50KCJUbyBhdm9pZCBh IGRhdGFiYXNlIHNodXRkb3duLCBleGVjdXRlIGEgZGF0YWJhc2Utd2lkZSBWQUNVVU0gaW4gdGhh dCBkYXRhYmFzZS5cbiIKLQkJCQkJCQkgIllvdSBtaWdodCBhbHNvIG5lZWQgdG8gY29tbWl0IG9y IHJvbGwgYmFjayBvbGQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zLCBvciBkcm9wIHN0YWxlIHJlcGxp Y2F0aW9uIHNsb3RzLiIpKSk7CisJCQkJCQkJICJZb3UgbWlnaHQgYWxzbyBuZWVkIHRvIGNvbW1p dCBvciByb2xsIGJhY2sgb2xkIHByZXBhcmVkIHRyYW5zYWN0aW9ucy4iKSkpOwogCX0KIH0KIAot LSAKMi41My4wCgo= --000000000000a854460653f1ff1c--