Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hdMXf-0007i5-7T for pgsql-committers@arkaria.postgresql.org; Tue, 18 Jun 2019 22:25:27 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hdMXd-00011v-6a for pgsql-committers@arkaria.postgresql.org; Tue, 18 Jun 2019 22:25:25 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hdMWx-0007Gi-7w for pgsql-committers@lists.postgresql.org; Tue, 18 Jun 2019 22:24:43 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hdMWu-000187-8q for pgsql-committers@lists.postgresql.org; Tue, 18 Jun 2019 22:24:42 +0000 Received: from gemulon.postgresql.org ([2001:4800:3e1:1::198]) by mahout.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hdMWt-0007jG-HD for pgsql-committers@lists.postgresql.org; Tue, 18 Jun 2019 22:24:39 +0000 Received: from git by gemulon.postgresql.org with local (Exim 4.89) (envelope-from ) id 1hdMWs-0004iZ-Qh for pgsql-committers@lists.postgresql.org; Tue, 18 Jun 2019 22:24:38 +0000 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 To: pgsql-committers@lists.postgresql.org From: Alvaro Herrera Subject: pgsql: Avoid spurious deadlocks when upgrading a tuple lock Message-Id: Date: Tue, 18 Jun 2019 22:24:38 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk QXZvaWQgc3B1cmlvdXMgZGVhZGxvY2tzIHdoZW4gdXBncmFkaW5nIGEgdHVwbGUgbG9jawoKVGhp cyBwdXRzIGJhY2sgcmV2ZXJ0ZWQgY29tbWl0IGRlODdhMDg0YzBhNSwgd2l0aCBzb21lIGJ1ZyBm aXhlcy4KCldoZW4gdHdvIChvciBtb3JlKSB0cmFuc2FjdGlvbnMgYXJlIHdhaXRpbmcgZm9yIHRy YW5zYWN0aW9uIFQxIHRvIHJlbGVhc2UgYQp0dXBsZS1sZXZlbCBsb2NrLCBhbmQgdHJhbnNhY3Rp b24gVDEgdXBncmFkZXMgaXRzIGxvY2sgdG8gYSBoaWdoZXIgbGV2ZWwsIGEKc3B1cmlvdXMgZGVh ZGxvY2sgY2FuIGJlIHJlcG9ydGVkIGFtb25nIHRoZSB3YWl0aW5nIHRyYW5zYWN0aW9ucyB3aGVu IFQxCmZpbmlzaGVzLiAgVGhlIHNpbXBsZXN0IGV4YW1wbGUgY2FzZSBzZWVtcyB0byBiZToKClQx OiBzZWxlY3QgaWQgZnJvbSBqb2Igd2hlcmUgbmFtZSA9ICdhJyBmb3Iga2V5IHNoYXJlOwpZOiBz ZWxlY3QgaWQgZnJvbSBqb2Igd2hlcmUgbmFtZSA9ICdhJyBmb3IgdXBkYXRlOyAtLSBzdGFydHMg d2FpdGluZyBmb3IgVDEKWjogc2VsZWN0IGlkIGZyb20gam9iIHdoZXJlIG5hbWUgPSAnYScgZm9y IGtleSBzaGFyZTsKVDE6IHVwZGF0ZSBqb2Igc2V0IG5hbWUgPSAnYicgd2hlcmUgaWQgPSAxOwpa OiB1cGRhdGUgam9iIHNldCBuYW1lID0gJ2MnIHdoZXJlIGlkID0gMTsgLS0gc3RhcnRzIHdhaXRp bmcgZm9yIFQxClQxOiByb2xsYmFjazsKCkF0IHRoaXMgcG9pbnQsIHRyYW5zYWN0aW9uIFkgaXMg cm9sbGVkIGJhY2sgb24gYWNjb3VudCBvZiBhIGRlYWRsb2NrOiBZCmhvbGRzIHRoZSBoZWF2eXdl aWdodCB0dXBsZSBsb2NrIGFuZCBpcyB3YWl0aW5nIGZvciB0aGUgWG1heCB0byBiZSByZWxlYXNl ZCwKd2hpbGUgWiBob2xkcyBwYXJ0IG9mIHRoZSBtdWx0aXhhY3QgYW5kIHRyaWVzIHRvIGFjcXVp cmUgdGhlIGhlYXZ5d2VpZ2h0CmxvY2sgKHBlciBwcm90b2NvbCkgYW5kIGdvZXMgdG8gc2xlZXA7 IG9uY2UgVDEgcmVsZWFzZXMgaXRzIHBhcnQgb2YgdGhlCm11bHRpeGFjdCwgWiBpcyBhd2FrZW5l ZCBvbmx5IHRvIGJlIHB1dCBiYWNrIHRvIHNsZWVwIG9uIHRoZSBoZWF2eXdlaWdodApsb2NrIHRo YXQgWSBpcyBob2xkaW5nIHdoaWxlIHNsZWVwaW5nLiAgS2Fib29tLgoKVGhpcyBjYW4gYmUgYXZv aWRlZCBieSBoYXZpbmcgWiBza2lwIHRoZSBoZWF2eXdlaWdodCBsb2NrIGFjcXVpc2l0aW9uLiAg QXMKZmFyIGFzIEkgY2FuIHNlZSwgdGhlIGJpZ2dlc3QgZG93bnNpZGUgaXMgdGhhdCBpZiB0aGVy ZSBhcmUgbXVsdGlwbGUgWgp0cmFuc2FjdGlvbnMsIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IHJl c3VtZSBhZnRlciBUMSBmaW5pc2hlcyBpcyBub3QKZ3VhcmFudGVlZC4KCkJhY2twYXRjaCB0byA5 LjYuICBUaGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5IG9uIDkuNSwgYnV0IHRoZSBuZXcgdGVzdHMg ZG9uJ3QKd29yayB0aGVyZSAoYmVjYXVzZSBpc29sYXRpb250ZXN0ZXIgaXMgbm90IHNtYXJ0IGVu b3VnaCksIHNvIEknbSBub3QgZ29pbmcKdG8gcmlzayBpdC4KCkF1dGhvcjogT2xla3NpaSBLbGl1 a2luCkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQjlDOUQ3Q0QtRUI5NC00NjM1LTkx QjYtRTU1OEFDRUMwRUMzQGhpbnRiaXRzLmNvbQpEaXNjdXNzaW9uOiBodHRwczovL3Bvc3Rnci5l cy9tLzI4MTUuMTU2MDUyMTQ1MUBzc3MucGdoLnBhLnVzCgpCcmFuY2gKLS0tLS0tCm1hc3RlcgoK RGV0YWlscwotLS0tLS0tCmh0dHBzOi8vZ2l0LnBvc3RncmVzcWwub3JnL3BnL2NvbW1pdGRpZmYv OGIyMWI0MTZlZDYyMTUwMWRiM2JlMzg4MTdjMjk4YzU3NDcwNTI0ZgoKTW9kaWZpZWQgRmlsZXMK LS0tLS0tLS0tLS0tLS0Kc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvUkVBRE1FLnR1cGxvY2sgICAg ICAgICAgICAgfCAgMTAgKysKc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvaGVhcGFtLmMgICAgICAg ICAgICAgICAgICAgfCAgODMgKysrKysrLS0tCi4uLi9leHBlY3RlZC90dXBsZWxvY2stdXBncmFk ZS1uby1kZWFkbG9jay5vdXQgICAgIHwgMTk1ICsrKysrKysrKysrKysrKysrKysrKwpzcmMvdGVz dC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVkdWxlICAgICAgICAgICAgICB8ICAgMSArCi4uLi9z cGVjcy90dXBsZWxvY2stdXBncmFkZS1uby1kZWFkbG9jay5zcGVjICAgICAgIHwgIDcyICsrKysr KysrCjUgZmlsZXMgY2hhbmdlZCwgMzQwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK