Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1gFaGq-0003qZ-Cm for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Oct 2018 07:41:32 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1gFaGo-0000pw-66 for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Oct 2018 07:41:30 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1gFaGm-0000pc-Ut for pgsql-hackers@lists.postgresql.org; Thu, 25 Oct 2018 07:41:29 +0000 Received: from out3-smtp.messagingengine.com ([66.111.4.27]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1gFaGd-00056y-Da for pgsql-hackers@postgresql.org; Thu, 25 Oct 2018 07:41:27 +0000 Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id C4F6C22199; Thu, 25 Oct 2018 03:41:17 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Thu, 25 Oct 2018 03:41:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=IOvbQP 54K/U/1Ngnz1vj22CljnI+EgEwKJMMbNhLsMI=; b=Xzbn4T3PJarncmHxmfk3PO z2fD2KBfG0+nhVOtC8lWVm/I7Wc+gWAR2tE4c5dvjWz7qC1K8tSV+61i4nprjkIW 6/0fN7RCkfz8OuCQBuu7ieNCvDIZVVX0OOOjE8XoKuKw6vjtKg42GBXTvSD2fsXm Zl3n65JhJqo1mckaZe4ChlEUZ0f/25p3QLv0co9MyVQuYq4zcdzK6vzsAeTQJJ0y XWrVazi+js4d+mKq0Ss1U0wD+HIH60IEO1kSStqg7KyqI4ShK2Ezbmwu5gKyCC12 ggcKLRLhFv+TvkLnMd9RIjgyAHL6jk5GkNctpDM2jrXieC4dv2OqB9uVxogN2NvA == X-ME-Sender: X-ME-Proxy: Received: from april.pezone.net (185.51.30.213.rev.vodafone.pt [213.30.51.185]) by mail.messagingengine.com (Postfix) with ESMTPA id 57726E455C; Thu, 25 Oct 2018 03:41:15 -0400 (EDT) Subject: Re: Alter index rename concurrently to From: Peter Eisentraut To: Andres Freund References: <1531767486.432607658@f357.i.mail.ru> <8cba25b5-e7c7-de36-7886-5488b37ec521@2ndquadrant.com> <1538567488.953452852@f403.i.mail.ru> <20181013020131.waeojm6anbs4mavy@alap3.anarazel.de> Cc: Andrey Klychkov , Robert Haas , Victor Yegorov , PostgreSQL Hackers Openpgp: preference=signencrypt Autocrypt: addr=peter.eisentraut@2ndquadrant.com; prefer-encrypt=mutual; keydata= xsFNBFUUt6kBEADZd9NNTBJbHmAXXJgPGOdd6Q73l80oifIVgn2tRxP9dYkCfTlo/yLqbKTl JNqTcyM6XrJDnB2sMEUGYCewYZXl+9C4bBJWyNqcEI1ae9u71vEq/fknFLArJ+2wN+f7QuRx Q8d94ZJAiJQ5g3fNk2HVeedCQCKP5dCzU+ZLt2dbsx1PDZLjTO9gf+JswWuGFb5wY5PZVM5V hq66Xk7ZJzHuARacza2RT7J2fkMmQBY+kr7L98Perb0GhafnlhXB0PvUB+N3xpmggMfwuhTu BngS/G/r3GvemxJuFxouw8xsMqrsfdksJXA2gLXYtwRCssdPV3PO0rlD9twqDo8URfIJ5fb6 1g/MV8aTOKjg3Q8MpJPtkwJqN4o3PvbwYdedeFnOVkkYAJdu/aX1v1BeCBDu7Hy3sF52scD3 pQbyQSl9vUDpTLarASAxNbAV0NRJE8dp4vfW6AH1ccryGiFqw/czPK/iN0+MT8wsjAW6WW4w hvjm5UPA1KTwi3ZT8eT5uycuH7QpuNk7LnGGXQ6KaRALFywzkr0A0V0AvFNa+l4wstMaXaB6 dmMXyF0/hfryqyOeu1gAdq4q0/PNC2dPgb/6uoh4eMjN6A5GXcprilhz5DulmsilY21hfSoU S64ODed96pKhprsOxjZiDRsN1QM5MwB+uwVWUNfsX7fIxE0BrwARAQABzSdQZXRlciBFaXNl bnRyYXV0IDxwZXRlckBlaXNlbnRyYXV0Lm9yZz7CwXoEEwEIACQCGwMFCwkIBwMFFQoJCAsF FgIDAQACHgECF4AFAlUUuKQCGQEACgkQoZ8SQ+xBJp8llw//RbGoXnF72FZTlOFsnNyxnWbF vViPCfdAlZl1GGK9OYCvV1dp/956HuhB0wpaGQHiBmQfOPJf/jLOPjXFYm2iEChEycrBChuE j4TSYemMp5BSPILYk9Uwd16kVD/+U6fQfK6H5pOhfBvbM6asMnmpY2wQuvktxHvaGlytFw84 EzFWNZtAZfxkw28w3AhIQkKe9hJanfyDL750RcbyEr8AAHty5IErrvS7tM5vQwIeh5BF26ND CyKPRdZgOgMpcwFfROKBDpAt052CgWIpNdhBdfIKlkCs4/ILxmC3rT/Mb/qZiHcoMMwEu6k+ T7vRAFZZAk62Yrr/U8/vUGKlzRZQoo86fyojCfI0ibCIc0z8rwCVY9P40G9wD9BTCZS/z8Vh jjpBlNnIKw2hM6hbxavKndCJjFFJD08rXrTyrLF/of18xD37vNdYooP9VATB5QjOWFRrscSZ 4a89e+to3m7YVnd4xdXwGp47dYusoax84C8tg1gZrH38ol9dPmnKX6GZrXeS7tH9k8VeUpJ8 HQbRThQRWAT936QpYbLConBmOtmbLmjQOGtiXPo1oK57X/7U/WBja5vWmm2q+Yxtt+3uHGVg DdDU4CJpXo4lX0v2n3QV5EBSW9hjdF3bNfl6GFBb1pPEhqNcMDUc7zkx/2uENdAdk/BnqMgH umip7b0pVfvOwU0EVRS3qQEQAJf6p0P7D+hMYUgCPkvgrcz6OJYsAYdUMUmokfqmkKwK0oJM ew8TNGM53ocKAgQGma5f10rwbZNPlpVPNRX5hwUmwVlcwSut0oE+JfUBH7mpysWvpF05RKIy q9RCoJZrAbXS7Tig56A1QD8IcM00rERZMcCOlI1+q9m4u9AOI+0LyGGSH+VvoyDHD/Jew4R2 TmPEF8Pu7lYiNYK88Q6u0kBkc+Tz3BNlyc6fi3HxnFfp0b75HLXPSTu2SwA/0Q31wHZXwrEU BR9KgSn/qbgy8ydPc97i82fhiFE3cbGexfPrQSMYmDGi+dcQ0s+AMQwC3XyMC0JkHpYUuFkR QdlIvaIhgFUUN2Vr4xF2ADaNTNFc4DYaiPHFAgHZw+3pZWqS4uIiWgJynrEaHw4F3QWU8/JB iyEWDhNq4WBrRA0u914TCCAoFOOKMnRdl8eJrRQKM/5/lXbHFjjlI/LDKhLRFsuQsnJJ3331 RjCzpHPZG5/p5KR1RHiAXa0p/DW5lXyq21hS3kjDlleoHqOxCN/cy0Jgz7qLDq1vZoCl67Sy RAH60c2Xu4may9SVltmot0OzWVHdrfS+85FQGp9580DaeLio7YMFKy2bfEvwQJ/c9xD2QPB+ oSb3V8ueSznXBG5+dyfOsZFRPxceA0wA2rSWZSjxLdKxvyGTj9vsCjaDu13rABEBAAHCwV8E GAEIAAkFAlUUt6kCGwwACgkQoZ8SQ+xBJp+HJhAAxmSTsC5y7p9Zu+nnLpucv/h88oEx985e qWeXzQiwM3pfRZS+PdTH9TyzHK0KOgKoAiubk0vt+BrT91D9d0G5kVQaTctAErGBoMkTaZJT XVEcNphiPzysdSqvprjojMp1y7rG8AP+Xd6m0rE1LRnkRRm8HyI8vdXsuLQPITGWXDLMjaNq AOV3BUnzkgtjMuIYw7SCr+12ZOb5dEKvaG4kjC4kaJ/TLbuBhVANcXkC90yp0AOZLs/cB1Dj OAXno/RUUruJ3r27a+pFv768UAi9QWcdw58yPxreMNMLqAgsS9oTHwHfGNWcB2dJ4UW+GMLJ hTf9TjQ2f+N/sIx5XMQ9pYw6CAJMK29qPx6/ZayrPxf22EXf0D3zTwIEZgwfSkynFVwV25L7 awQq60fifdMYheSxq7GbhpsixmcD+e161cCmLIt75YDt5bQ0B1yf7EmxG8n7pGZAOM6LoNsU fkSldba5XVwh8LuN5mK0nQBELGW6Os4TDq4REggLpfcvFC215zpuo0iCGnmE/Bns4nowqUSP u4tkWL+nxW4qgv8wo8HJ52jd79EJ8iqfIBoidBfy9AIUiEUApGQzWPu6yWcI8fY0rN5D+tc+ Yw1Zt6Mm+huYJpgCRsTcfzEcahnBn521CWcWvhW1ff3KFileFMtNmnBBhMncmRKHphtTKEpN 3jI= Organization: 2ndQuadrant Message-ID: <87683f04-d63f-5bb4-793f-2be883b6e577@2ndquadrant.com> Date: Thu, 25 Oct 2018 08:41:13 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------B908E2087D7E82822500B2C6" 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. --------------B908E2087D7E82822500B2C6 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 17/10/2018 23:11, Peter Eisentraut wrote: > On 13/10/2018 04:01, Andres Freund wrote: >> I don't see how this could be argued. It has to be a self-conflicting >> lockmode, otherwise you'd end up doing renames of tables where you >> cannot see the previous state. And you'd get weird errors about updating >> invisible rows etc. > >> I don't buy this description. Imo it's a fundamental correctness >> thing. Without it concurrent DDL would potentially overwrite the rename, >> because they could start updating while still seeing the old version. > > OK, I can refine those descriptions/comments. Do you have any concerns > about the underlying principle of this patch? Patch with updated comments to reflect your input. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services --------------B908E2087D7E82822500B2C6 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v3-0001-Lower-lock-level-for-renaming-indexes.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v3-0001-Lower-lock-level-for-renaming-indexes.patch" RnJvbSAzMTg4Yjc2Y2I0YTI4NTFiODczNjExOTNhZGRiNmNiZTMyNmQ0YTY0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlcl9lQGdteC5u ZXQ+CkRhdGU6IFRodSwgMjUgT2N0IDIwMTggMDg6MzM6MTcgKzAxMDAKU3ViamVjdDogW1BB VENIIHYzXSBMb3dlciBsb2NrIGxldmVsIGZvciByZW5hbWluZyBpbmRleGVzCgpDaGFuZ2Ug bG9jayBsZXZlbCBmb3IgcmVuYW1pbmcgaW5kZXggKGVpdGhlciBBTFRFUiBJTkRFWCBvciBp bXBsaWNpdGx5CnZpYSBzb21lIG90aGVyIGNvbW1hbmRzKSBmcm9tIEFjY2Vzc0V4Y2x1c2l2 ZUxvY2sgdG8KU2hhcmVVcGRhdGVFeGNsdXNpdmVMb2NrLgoKT25lIHJlYXNvbiB3ZSBuZWVk IGEgc3Ryb25nIGxvY2sgZm9yIHJlbGF0aW9uIHJlbmFtaW5nIGlzIHRoYXQgdGhlCm5hbWUg Y2hhbmdlIGNhdXNlcyBhIHJlYnVpbGQgb2YgdGhlIHJlbGNhY2hlIGVudHJ5LiAgQ29uY3Vy cmVudApzZXNzaW9ucyB0aGF0IGhhdmUgdGhlIHJlbGF0aW9uIG9wZW4gbWlnaHQgbm90IGJl IGFibGUgdG8gaGFuZGxlIHRoZQpyZWxjYWNoZSBlbnRyeSBjaGFuZ2luZyB1bmRlcm5lYXRo IHRoZW0uICBUaGVyZWZvcmUsIHdlIG5lZWQgdG8gbG9jawp0aGUgcmVsYXRpb24gaW4gYSB3 YXkgdGhhdCBubyBvbmUgY2FuIGhhdmUgdGhlIHJlbGF0aW9uIG9wZW4KY29uY3VycmVudGx5 LiAgQnV0IGZvciBpbmRleGVzLCB0aGUgcmVsY2FjaGUgaGFuZGxlcyByZWxvYWRzIHNwZWNp YWxseQppbiBSZWxhdGlvblJlbG9hZEluZGV4SW5mbygpIGluIGEgd2F5IHRoYXQga2VlcHMg Y2hhbmdlcyBpbiB0aGUKcmVsY2FjaGUgZW50cnkgdG8gYSBtaW5pbXVtLiAgQXMgbG9uZyBh cyBubyBvbmUga2VlcHMgcG9pbnRlcnMgdG8KcmRfYW1jYWNoZSBhbmQgcmRfb3B0aW9ucyBh cm91bmQgYWNyb3NzIHBvc3NpYmxlIHJlbGNhY2hlIGZsdXNoZXMsCndoaWNoIGlzIHRoZSBj YXNlLCB0aGlzIG91Z2h0IHRvIGJlIHNhZmUuCgpXZSBhbHNvIHdhbnQgdG8gdXNlIGEgc2Vs Zi1leGNsdXNpdmUgbG9jayBmb3IgY29ycmVjdG5lc3MsIHNvIHRoYXQKY29uY3VycmVudCBE REwgZG9lc24ndCBvdmVyd3JpdGUgdGhlIHJlbmFtZSBpZiB0aGV5IHN0YXJ0IHVwZGF0aW5n CndoaWxlIHN0aWxsIHNlZWluZyB0aGUgb2xkIHZlcnNpb24uICBUaGVyZWZvcmUsIHdlIHVz ZQpTaGFyZVVwZGF0ZUV4Y2x1c2l2ZUxvY2ssIHdoaWNoIGlzIGFscmVhZHkgdXNlZCBieSBv dGhlciBEREwgY29tbWFuZHMKdGhhdCB3YW50IHRvIG9wZXJhdGUgaW4gYSBjb25jdXJyZW50 IG1hbm5lci4KClRoZSByZWFzb24gdGhpcyBpcyBpbnRlcmVzdGluZyBhdCBhbGwgaXMgdGhh dCByZW5hbWluZyBhbiBpbmRleCBpcyBhCnR5cGljYWwgcGFydCBvZiBhIGNvbmN1cnJlbnQg cmVpbmRleGluZyB3b3JrZmxvdyAoQ1JFQVRFIElOREVYCkNPTkNVUlJFTlRMWSBuZXcgKyBE Uk9QIElOREVYIENPTkNVUlJFTlRMWSBvbGQgKyByZW5hbWUgYmFjaykuICBBbmQKaW5kZWVk IGEgZnV0dXJlIGJ1aWx0LWluIFJFSU5ERVggQ09OQ1VSUkVOVExZIG1pZ2h0IHJlbHkgb24g dGhlIGFiaWxpdHkKdG8gZG8gY29uY3VycmVudCByZW5hbWVzIGFzIHdlbGwuCi0tLQogZG9j L3NyYy9zZ21sL212Y2Muc2dtbCAgICAgICAgICAgIHwgMTIgKysrKysrLS0tLS0tCiBkb2Mv c3JjL3NnbWwvcmVmL2FsdGVyX2luZGV4LnNnbWwgfCAgOSArKysrKysrKy0KIHNyYy9iYWNr ZW5kL2NvbW1hbmRzL2NsdXN0ZXIuYyAgICB8ICA0ICsrLS0KIHNyYy9iYWNrZW5kL2NvbW1h bmRzL3RhYmxlY21kcy5jICB8IDI3ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogc3Jj L2JhY2tlbmQvY29tbWFuZHMvdHlwZWNtZHMuYyAgIHwgIDIgKy0KIHNyYy9pbmNsdWRlL2Nv bW1hbmRzL3RhYmxlY21kcy5oICB8ICAzICsrLQogNiBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNl cnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwv bXZjYy5zZ21sIGIvZG9jL3NyYy9zZ21sL212Y2Muc2dtbAppbmRleCA3MzkzNGU1Y2YzLi5i ZWRkOWEwMDhkIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvbXZjYy5zZ21sCisrKyBiL2Rv Yy9zcmMvc2dtbC9tdmNjLnNnbWwKQEAgLTkyNiwxMCArOTI2LDEwIEBAIDx0aXRsZT5UYWJs ZS1sZXZlbCBMb2NrIE1vZGVzPC90aXRsZT4KICAgICAgICAgPHBhcmE+CiAgICAgICAgICBB Y3F1aXJlZCBieSA8Y29tbWFuZD5WQUNVVU08L2NvbW1hbmQ+ICh3aXRob3V0IDxvcHRpb24+ RlVMTDwvb3B0aW9uPiksCiAgICAgICAgICA8Y29tbWFuZD5BTkFMWVpFPC9jb21tYW5kPiwg PGNvbW1hbmQ+Q1JFQVRFIElOREVYIENPTkNVUlJFTlRMWTwvY29tbWFuZD4sCi0gICAgICAg ICA8Y29tbWFuZD5DUkVBVEUgU1RBVElTVElDUzwvY29tbWFuZD4gYW5kCi0gICAgICAgICA8 Y29tbWFuZD5BTFRFUiBUQUJMRSBWQUxJREFURTwvY29tbWFuZD4gYW5kIG90aGVyCi0gICAg ICAgICA8Y29tbWFuZD5BTFRFUiBUQUJMRTwvY29tbWFuZD4gdmFyaWFudHMgKGZvciBmdWxs IGRldGFpbHMgc2VlCi0gICAgICAgICA8eHJlZiBsaW5rZW5kPSJzcWwtYWx0ZXJ0YWJsZSIv PikuCisgICAgICAgICA8Y29tbWFuZD5DUkVBVEUgU1RBVElTVElDUzwvY29tbWFuZD4sIGFu ZCBjZXJ0YWluIDxjb21tYW5kPkFMVEVSCisgICAgICAgICBJTkRFWDwvY29tbWFuZD4gYW5k IDxjb21tYW5kPkFMVEVSIFRBQkxFPC9jb21tYW5kPiB2YXJpYW50cyAoZm9yIGZ1bGwKKyAg ICAgICAgIGRldGFpbHMgc2VlIDx4cmVmIGxpbmtlbmQ9InNxbC1hbHRlcmluZGV4Ii8+IGFu ZCA8eHJlZgorICAgICAgICAgbGlua2VuZD0ic3FsLWFsdGVydGFibGUiLz4pLgogICAgICAg ICA8L3BhcmE+CiAgICAgICAgPC9saXN0aXRlbT4KICAgICAgIDwvdmFybGlzdGVudHJ5PgpA QCAtOTcwLDcgKzk3MCw3IEBAIDx0aXRsZT5UYWJsZS1sZXZlbCBMb2NrIE1vZGVzPC90aXRs ZT4KICAgICAgICAgPC9wYXJhPgogCiAgICAgICAgIDxwYXJhPgotICAgICAgICAgQWNxdWly ZWQgYnkgPGNvbW1hbmQ+Q1JFQVRFIFRSSUdHRVI8L2NvbW1hbmQ+IGFuZCBtYW55IGZvcm1z IG9mCisgICAgICAgICBBY3F1aXJlZCBieSA8Y29tbWFuZD5DUkVBVEUgVFJJR0dFUjwvY29t bWFuZD4gYW5kIHNvbWUgZm9ybXMgb2YKICAgICAgICAgIDxjb21tYW5kPkFMVEVSIFRBQkxF PC9jb21tYW5kPiAoc2VlIDx4cmVmIGxpbmtlbmQ9InNxbC1hbHRlcnRhYmxlIi8+KS4KICAg ICAgICAgPC9wYXJhPgogICAgICAgIDwvbGlzdGl0ZW0+CkBAIC0xMDIwLDcgKzEwMjAsNyBA QCA8dGl0bGU+VGFibGUtbGV2ZWwgTG9jayBNb2RlczwvdGl0bGU+CiAgICAgICAgICA8Y29t bWFuZD5DTFVTVEVSPC9jb21tYW5kPiwgPGNvbW1hbmQ+VkFDVVVNIEZVTEw8L2NvbW1hbmQ+ LAogICAgICAgICAgYW5kIDxjb21tYW5kPlJFRlJFU0ggTUFURVJJQUxJWkVEIFZJRVc8L2Nv bW1hbmQ+ICh3aXRob3V0CiAgICAgICAgICA8b3B0aW9uPkNPTkNVUlJFTlRMWTwvb3B0aW9u PikKLSAgICAgICAgIGNvbW1hbmRzLiBNYW55IGZvcm1zIG9mIDxjb21tYW5kPkFMVEVSIFRB QkxFPC9jb21tYW5kPiBhbHNvIGFjcXVpcmUKKyAgICAgICAgIGNvbW1hbmRzLiBNYW55IGZv cm1zIG9mIDxjb21tYW5kPkFMVEVSIElOREVYPC9jb21tYW5kPiBhbmQgPGNvbW1hbmQ+QUxU RVIgVEFCTEU8L2NvbW1hbmQ+IGFsc28gYWNxdWlyZQogICAgICAgICAgYSBsb2NrIGF0IHRo aXMgbGV2ZWwuIFRoaXMgaXMgYWxzbyB0aGUgZGVmYXVsdCBsb2NrIG1vZGUgZm9yCiAgICAg ICAgICA8Y29tbWFuZD5MT0NLIFRBQkxFPC9jb21tYW5kPiBzdGF0ZW1lbnRzIHRoYXQgZG8g bm90IHNwZWNpZnkKICAgICAgICAgIGEgbW9kZSBleHBsaWNpdGx5LgpkaWZmIC0tZ2l0IGEv ZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9pbmRleC5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi9h bHRlcl9pbmRleC5zZ21sCmluZGV4IGQwYTYyMTIzNTguLjZkMzRkYmI3NGUgMTAwNjQ0Ci0t LSBhL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfaW5kZXguc2dtbAorKysgYi9kb2Mvc3JjL3Nn bWwvcmVmL2FsdGVyX2luZGV4LnNnbWwKQEAgLTM5LDcgKzM5LDEwIEBAIDx0aXRsZT5EZXNj cmlwdGlvbjwvdGl0bGU+CiAKICAgPHBhcmE+CiAgICA8Y29tbWFuZD5BTFRFUiBJTkRFWDwv Y29tbWFuZD4gY2hhbmdlcyB0aGUgZGVmaW5pdGlvbiBvZiBhbiBleGlzdGluZyBpbmRleC4K LSAgIFRoZXJlIGFyZSBzZXZlcmFsIHN1YmZvcm1zOgorICAgVGhlcmUgYXJlIHNldmVyYWwg c3ViZm9ybXMgZGVzY3JpYmVkIGJlbG93LiBOb3RlIHRoYXQgdGhlIGxvY2sgbGV2ZWwgcmVx dWlyZWQKKyAgIG1heSBkaWZmZXIgZm9yIGVhY2ggc3ViZm9ybS4gQW4gPGxpdGVyYWw+QUND RVNTIEVYQ0xVU0lWRTwvbGl0ZXJhbD4gbG9jayBpcyBoZWxkCisgICB1bmxlc3MgZXhwbGlj aXRseSBub3RlZC4gV2hlbiBtdWx0aXBsZSBzdWJjb21tYW5kcyBhcmUgbGlzdGVkLCB0aGUg bG9jaworICAgaGVsZCB3aWxsIGJlIHRoZSBzdHJpY3Rlc3Qgb25lIHJlcXVpcmVkIGZyb20g YW55IHN1YmNvbW1hbmQuCiAKICAgPHZhcmlhYmxlbGlzdD4KIApAQCAtNTMsNiArNTYsMTAg QEAgPHRpdGxlPkRlc2NyaXB0aW9uPC90aXRsZT4KICAgICAgIG9yIDxsaXRlcmFsPkVYQ0xV REU8L2xpdGVyYWw+KSwgdGhlIGNvbnN0cmFpbnQgaXMgcmVuYW1lZCBhcyB3ZWxsLgogICAg ICAgVGhlcmUgaXMgbm8gZWZmZWN0IG9uIHRoZSBzdG9yZWQgZGF0YS4KICAgICAgPC9wYXJh PgorICAgICA8cGFyYT4KKyAgICAgIFJlbmFtaW5nIGFuIGluZGV4IGFjcXVpcmVzIGEgPGxp dGVyYWw+U0hBUkUgVVBEQVRFIEVYQ0xVU0lWRTwvbGl0ZXJhbD4KKyAgICAgIGxvY2suCisg ICAgIDwvcGFyYT4KICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CiAKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NsdXN0ZXIuYyBiL3NyYy9iYWNrZW5k L2NvbW1hbmRzL2NsdXN0ZXIuYwppbmRleCA2OGJlNDcwOTc3Li41ZWNkMjU2NWI0IDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9jbHVzdGVyLmMKKysrIGIvc3JjL2JhY2tl bmQvY29tbWFuZHMvY2x1c3Rlci5jCkBAIC0xNjYxLDE0ICsxNjYxLDE0IEBAIGZpbmlzaF9o ZWFwX3N3YXAoT2lkIE9JRE9sZEhlYXAsIE9pZCBPSUROZXdIZWFwLAogCQkJc25wcmludGYo TmV3VG9hc3ROYW1lLCBOQU1FREFUQUxFTiwgInBnX3RvYXN0XyV1IiwKIAkJCQkJIE9JRE9s ZEhlYXApOwogCQkJUmVuYW1lUmVsYXRpb25JbnRlcm5hbChuZXdyZWwtPnJkX3JlbC0+cmVs dG9hc3RyZWxpZCwKLQkJCQkJCQkJICAgTmV3VG9hc3ROYW1lLCB0cnVlKTsKKwkJCQkJCQkJ ICAgTmV3VG9hc3ROYW1lLCB0cnVlLCBmYWxzZSk7CiAKIAkJCS8qIC4uLiBhbmQgaXRzIHZh bGlkIGluZGV4IHRvby4gKi8KIAkJCXNucHJpbnRmKE5ld1RvYXN0TmFtZSwgTkFNRURBVEFM RU4sICJwZ190b2FzdF8ldV9pbmRleCIsCiAJCQkJCSBPSURPbGRIZWFwKTsKIAogCQkJUmVu YW1lUmVsYXRpb25JbnRlcm5hbCh0b2FzdGlkeCwKLQkJCQkJCQkJICAgTmV3VG9hc3ROYW1l LCB0cnVlKTsKKwkJCQkJCQkJICAgTmV3VG9hc3ROYW1lLCB0cnVlLCB0cnVlKTsKIAkJfQog CQlyZWxhdGlvbl9jbG9zZShuZXdyZWwsIE5vTG9jayk7CiAJfQpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90 YWJsZWNtZHMuYwppbmRleCAxNTNhZWMyNjNlLi4wYTdmNGE1ODdlIDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21t YW5kcy90YWJsZWNtZHMuYwpAQCAtMzA0Miw3ICszMDQyLDcgQEAgcmVuYW1lX2NvbnN0cmFp bnRfaW50ZXJuYWwoT2lkIG15cmVsaWQsCiAJCQl8fCBjb24tPmNvbnR5cGUgPT0gQ09OU1RS QUlOVF9VTklRVUUKIAkJCXx8IGNvbi0+Y29udHlwZSA9PSBDT05TVFJBSU5UX0VYQ0xVU0lP TikpCiAJCS8qIHJlbmFtZSB0aGUgaW5kZXg7IHRoaXMgcmVuYW1lcyB0aGUgY29uc3RyYWlu dCBhcyB3ZWxsICovCi0JCVJlbmFtZVJlbGF0aW9uSW50ZXJuYWwoY29uLT5jb25pbmRpZCwg bmV3Y29ubmFtZSwgZmFsc2UpOworCQlSZW5hbWVSZWxhdGlvbkludGVybmFsKGNvbi0+Y29u aW5kaWQsIG5ld2Nvbm5hbWUsIGZhbHNlLCB0cnVlKTsKIAllbHNlCiAJCVJlbmFtZUNvbnN0 cmFpbnRCeUlkKGNvbnN0cmFpbnRPaWQsIG5ld2Nvbm5hbWUpOwogCkBAIC0zMTEwLDYgKzMx MTAsNyBAQCBSZW5hbWVDb25zdHJhaW50KFJlbmFtZVN0bXQgKnN0bXQpCiBPYmplY3RBZGRy ZXNzCiBSZW5hbWVSZWxhdGlvbihSZW5hbWVTdG10ICpzdG10KQogeworCWJvb2wJCWlzX2lu ZGV4ID0gc3RtdC0+cmVuYW1lVHlwZSA9PSBPQkpFQ1RfSU5ERVg7CiAJT2lkCQkJcmVsaWQ7 CiAJT2JqZWN0QWRkcmVzcyBhZGRyZXNzOwogCkBAIC0zMTIxLDcgKzMxMjIsOCBAQCBSZW5h bWVSZWxhdGlvbihSZW5hbWVTdG10ICpzdG10KQogCSAqIExvY2sgbGV2ZWwgdXNlZCBoZXJl IHNob3VsZCBtYXRjaCBSZW5hbWVSZWxhdGlvbkludGVybmFsLCB0byBhdm9pZCBsb2NrCiAJ ICogZXNjYWxhdGlvbi4KIAkgKi8KLQlyZWxpZCA9IFJhbmdlVmFyR2V0UmVsaWRFeHRlbmRl ZChzdG10LT5yZWxhdGlvbiwgQWNjZXNzRXhjbHVzaXZlTG9jaywKKwlyZWxpZCA9IFJhbmdl VmFyR2V0UmVsaWRFeHRlbmRlZChzdG10LT5yZWxhdGlvbiwKKwkJCQkJCQkJCSBpc19pbmRl eCA/IFNoYXJlVXBkYXRlRXhjbHVzaXZlTG9jayA6IEFjY2Vzc0V4Y2x1c2l2ZUxvY2ssCiAJ CQkJCQkJCQkgc3RtdC0+bWlzc2luZ19vayA/IFJWUl9NSVNTSU5HX09LIDogMCwKIAkJCQkJ CQkJCSBSYW5nZVZhckNhbGxiYWNrRm9yQWx0ZXJSZWxhdGlvbiwKIAkJCQkJCQkJCSAodm9p ZCAqKSBzdG10KTsKQEAgLTMxMzUsNyArMzEzNyw3IEBAIFJlbmFtZVJlbGF0aW9uKFJlbmFt ZVN0bXQgKnN0bXQpCiAJfQogCiAJLyogRG8gdGhlIHdvcmsgKi8KLQlSZW5hbWVSZWxhdGlv bkludGVybmFsKHJlbGlkLCBzdG10LT5uZXduYW1lLCBmYWxzZSk7CisJUmVuYW1lUmVsYXRp b25JbnRlcm5hbChyZWxpZCwgc3RtdC0+bmV3bmFtZSwgZmFsc2UsIGlzX2luZGV4KTsKIAog CU9iamVjdEFkZHJlc3NTZXQoYWRkcmVzcywgUmVsYXRpb25SZWxhdGlvbklkLCByZWxpZCk7 CiAKQEAgLTMxNDYsNyArMzE0OCw3IEBAIFJlbmFtZVJlbGF0aW9uKFJlbmFtZVN0bXQgKnN0 bXQpCiAgKgkJUmVuYW1lUmVsYXRpb25JbnRlcm5hbCAtIGNoYW5nZSB0aGUgbmFtZSBvZiBh IHJlbGF0aW9uCiAgKi8KIHZvaWQKLVJlbmFtZVJlbGF0aW9uSW50ZXJuYWwoT2lkIG15cmVs aWQsIGNvbnN0IGNoYXIgKm5ld3JlbG5hbWUsIGJvb2wgaXNfaW50ZXJuYWwpCitSZW5hbWVS ZWxhdGlvbkludGVybmFsKE9pZCBteXJlbGlkLCBjb25zdCBjaGFyICpuZXdyZWxuYW1lLCBi b29sIGlzX2ludGVybmFsLCBib29sIGlzX2luZGV4KQogewogCVJlbGF0aW9uCXRhcmdldHJl bGF0aW9uOwogCVJlbGF0aW9uCXJlbHJlbGF0aW9uOwkvKiBmb3IgUkVMQVRJT04gcmVsYXRp b24gKi8KQEAgLTMxNTUsMTEgKzMxNTcsMTYgQEAgUmVuYW1lUmVsYXRpb25JbnRlcm5hbChP aWQgbXlyZWxpZCwgY29uc3QgY2hhciAqbmV3cmVsbmFtZSwgYm9vbCBpc19pbnRlcm5hbCkK IAlPaWQJCQluYW1lc3BhY2VJZDsKIAogCS8qCi0JICogR3JhYiBhbiBleGNsdXNpdmUgbG9j ayBvbiB0aGUgdGFyZ2V0IHRhYmxlLCBpbmRleCwgc2VxdWVuY2UsIHZpZXcsCi0JICogbWF0 ZXJpYWxpemVkIHZpZXcsIG9yIGZvcmVpZ24gdGFibGUsIHdoaWNoIHdlIHdpbGwgTk9UIHJl bGVhc2UgdW50aWwKLQkgKiBlbmQgb2YgdHJhbnNhY3Rpb24uCisJICogR3JhYiBhIGxvY2sg b24gdGhlIHRhcmdldCByZWxhdGlvbiwgd2hpY2ggd2Ugd2lsbCBOT1QgcmVsZWFzZSB1bnRp bCBlbmQKKwkgKiBvZiB0cmFuc2FjdGlvbi4gIFdlIG5lZWQgYXQgbGVhc3QgYSBzZWxmLWV4 Y2x1c2l2ZSBsb2NrIHNvIHRoYXQKKwkgKiBjb25jdXJyZW50IERETCBkb2Vzbid0IG92ZXJ3 cml0ZSB0aGUgcmVuYW1lIGlmIHRoZXkgc3RhcnQgdXBkYXRpbmcKKwkgKiB3aGlsZSBzdGls bCBzZWVpbmcgdGhlIG9sZCB2ZXJzaW9uLiAgVGhlIGxvY2sgYWxzbyBndWFyZHMgYWdhaW5z dAorCSAqIHRyaWdnZXJpbmcgcmVsY2FjaGUgcmVsb2FkcyBpbiBjb25jdXJyZW50IHNlc3Np b25zLCB3aGljaCBtaWdodCBub3QKKwkgKiBoYW5kbGUgdGhpcyBpbmZvcm1hdGlvbiBjaGFu Z2luZyB1bmRlciB0aGVtLiAgRm9yIGluZGV4ZXMsIHdlIGNhbiB1c2UgYQorCSAqIHJlZHVj ZWQgbG9jayBsZXZlbCBiZWNhdXNlIFJlbGF0aW9uUmVsb2FkSW5kZXhJbmZvKCkgaGFuZGxl cyBpbmRleGVzCisJICogc3BlY2lhbGx5LgogCSAqLwotCXRhcmdldHJlbGF0aW9uID0gcmVs YXRpb25fb3BlbihteXJlbGlkLCBBY2Nlc3NFeGNsdXNpdmVMb2NrKTsKKwl0YXJnZXRyZWxh dGlvbiA9IHJlbGF0aW9uX29wZW4obXlyZWxpZCwgaXNfaW5kZXggPyBTaGFyZVVwZGF0ZUV4 Y2x1c2l2ZUxvY2sgOiBBY2Nlc3NFeGNsdXNpdmVMb2NrKTsKIAluYW1lc3BhY2VJZCA9IFJl bGF0aW9uR2V0TmFtZXNwYWNlKHRhcmdldHJlbGF0aW9uKTsKIAogCS8qCkBAIC0zMjEyLDcg KzMyMTksNyBAQCBSZW5hbWVSZWxhdGlvbkludGVybmFsKE9pZCBteXJlbGlkLCBjb25zdCBj aGFyICpuZXdyZWxuYW1lLCBib29sIGlzX2ludGVybmFsKQogCX0KIAogCS8qCi0JICogQ2xv c2UgcmVsLCBidXQga2VlcCBleGNsdXNpdmUgbG9jayEKKwkgKiBDbG9zZSByZWwsIGJ1dCBr ZWVwIGxvY2shCiAJICovCiAJcmVsYXRpb25fY2xvc2UodGFyZ2V0cmVsYXRpb24sIE5vTG9j ayk7CiB9CkBAIC03MDcwLDcgKzcwNzcsNyBAQCBBVEV4ZWNBZGRJbmRleENvbnN0cmFpbnQo QWx0ZXJlZFRhYmxlSW5mbyAqdGFiLCBSZWxhdGlvbiByZWwsCiAJCWVyZXBvcnQoTk9USUNF LAogCQkJCShlcnJtc2coIkFMVEVSIFRBQkxFIC8gQUREIENPTlNUUkFJTlQgVVNJTkcgSU5E RVggd2lsbCByZW5hbWUgaW5kZXggXCIlc1wiIHRvIFwiJXNcIiIsCiAJCQkJCQlpbmRleE5h bWUsIGNvbnN0cmFpbnROYW1lKSkpOwotCQlSZW5hbWVSZWxhdGlvbkludGVybmFsKGluZGV4 X29pZCwgY29uc3RyYWludE5hbWUsIGZhbHNlKTsKKwkJUmVuYW1lUmVsYXRpb25JbnRlcm5h bChpbmRleF9vaWQsIGNvbnN0cmFpbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CiAJfQogCiAJLyog RXh0cmEgY2hlY2tzIG5lZWRlZCBpZiBtYWtpbmcgcHJpbWFyeSBrZXkgKi8KZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3R5cGVjbWRzLmMgYi9zcmMvYmFja2VuZC9jb21t YW5kcy90eXBlY21kcy5jCmluZGV4IDMyNzE5NjJhN2EuLjY5NDI5YThiNjIgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3R5cGVjbWRzLmMKKysrIGIvc3JjL2JhY2tlbmQv Y29tbWFuZHMvdHlwZWNtZHMuYwpAQCAtMzI2Miw3ICszMjYyLDcgQEAgUmVuYW1lVHlwZShS ZW5hbWVTdG10ICpzdG10KQogCSAqIFJlbmFtZVJlbGF0aW9uSW50ZXJuYWwgd2lsbCBjYWxs IFJlbmFtZVR5cGVJbnRlcm5hbCBhdXRvbWF0aWNhbGx5LgogCSAqLwogCWlmICh0eXBUdXAt PnR5cHR5cGUgPT0gVFlQVFlQRV9DT01QT1NJVEUpCi0JCVJlbmFtZVJlbGF0aW9uSW50ZXJu YWwodHlwVHVwLT50eXByZWxpZCwgbmV3VHlwZU5hbWUsIGZhbHNlKTsKKwkJUmVuYW1lUmVs YXRpb25JbnRlcm5hbCh0eXBUdXAtPnR5cHJlbGlkLCBuZXdUeXBlTmFtZSwgZmFsc2UsIGZh bHNlKTsKIAllbHNlCiAJCVJlbmFtZVR5cGVJbnRlcm5hbCh0eXBlT2lkLCBuZXdUeXBlTmFt ZSwKIAkJCQkJCSAgIHR5cFR1cC0+dHlwbmFtZXNwYWNlKTsKZGlmZiAtLWdpdCBhL3NyYy9p bmNsdWRlL2NvbW1hbmRzL3RhYmxlY21kcy5oIGIvc3JjL2luY2x1ZGUvY29tbWFuZHMvdGFi bGVjbWRzLmgKaW5kZXggMTM4ZGU4NGU4My4uMmFmY2Q1YmU0NCAxMDA2NDQKLS0tIGEvc3Jj L2luY2x1ZGUvY29tbWFuZHMvdGFibGVjbWRzLmgKKysrIGIvc3JjL2luY2x1ZGUvY29tbWFu ZHMvdGFibGVjbWRzLmgKQEAgLTY3LDcgKzY3LDggQEAgZXh0ZXJuIE9iamVjdEFkZHJlc3Mg UmVuYW1lQ29uc3RyYWludChSZW5hbWVTdG10ICpzdG10KTsKIGV4dGVybiBPYmplY3RBZGRy ZXNzIFJlbmFtZVJlbGF0aW9uKFJlbmFtZVN0bXQgKnN0bXQpOwogCiBleHRlcm4gdm9pZCBS ZW5hbWVSZWxhdGlvbkludGVybmFsKE9pZCBteXJlbGlkLAotCQkJCQkgICBjb25zdCBjaGFy ICpuZXdyZWxuYW1lLCBib29sIGlzX2ludGVybmFsKTsKKwkJCQkJICAgY29uc3QgY2hhciAq bmV3cmVsbmFtZSwgYm9vbCBpc19pbnRlcm5hbCwKKwkJCQkJICAgYm9vbCBpc19pbmRleCk7 CiAKIGV4dGVybiB2b2lkIGZpbmRfY29tcG9zaXRlX3R5cGVfZGVwZW5kZW5jaWVzKE9pZCB0 eXBlT2lkLAogCQkJCQkJCQkgUmVsYXRpb24gb3JpZ1JlbGF0aW9uLAoKYmFzZS1jb21taXQ6 IDEwMDc0NjUxZTMzNTVlMjQwNTAxNWY2MjUzNjAyYmU4MzQ0YmM4MjkKLS0gCjIuMTkuMQoK --------------B908E2087D7E82822500B2C6--