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 1hbXNW-0002FX-Uh for pgsql-committers@arkaria.postgresql.org; Thu, 13 Jun 2019 21:35: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 1hbXNV-0004vM-SN for pgsql-committers@arkaria.postgresql.org; Thu, 13 Jun 2019 21:35:25 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hbXKZ-0002vg-Kp for pgsql-committers@lists.postgresql.org; Thu, 13 Jun 2019 21:32:23 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hbXKT-0005Hw-Q5 for pgsql-committers@lists.postgresql.org; Thu, 13 Jun 2019 21:32:23 +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 1hbXKQ-0005kc-QN for pgsql-committers@lists.postgresql.org; Thu, 13 Jun 2019 21:32:15 +0000 Received: from git by gemulon.postgresql.org with local (Exim 4.89) (envelope-from ) id 1hbXKQ-0003g5-0K for pgsql-committers@lists.postgresql.org; Thu, 13 Jun 2019 21:32:14 +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: Thu, 13 Jun 2019 21:32:14 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk QXZvaWQgc3B1cmlvdXMgZGVhZGxvY2tzIHdoZW4gdXBncmFkaW5nIGEgdHVwbGUgbG9jawoKV2hl biB0d28gKG9yIG1vcmUpIHRyYW5zYWN0aW9ucyBhcmUgd2FpdGluZyBmb3IgdHJhbnNhY3Rpb24g VDEgdG8gcmVsZWFzZSBhCnR1cGxlLWxldmVsIGxvY2ssIGFuZCB0cmFuc2FjdGlvbiBUMSB1cGdy YWRlcyBpdHMgbG9jayB0byBhIGhpZ2hlciBsZXZlbCwgYQpzcHVyaW91cyBkZWFkbG9jayBjYW4g YmUgcmVwb3J0ZWQgYW1vbmcgdGhlIHdhaXRpbmcgdHJhbnNhY3Rpb25zIHdoZW4gVDEKZmluaXNo ZXMuICBUaGUgc2ltcGxlc3QgZXhhbXBsZSBjYXNlIHNlZW1zIHRvIGJlOgoKVDE6IHNlbGVjdCBp ZCBmcm9tIGpvYiB3aGVyZSBuYW1lID0gJ2EnIGZvciBrZXkgc2hhcmU7Clk6IHNlbGVjdCBpZCBm cm9tIGpvYiB3aGVyZSBuYW1lID0gJ2EnIGZvciB1cGRhdGU7IC0tIHN0YXJ0cyB3YWl0aW5nIGZv ciBYClo6IHNlbGVjdCBpZCBmcm9tIGpvYiB3aGVyZSBuYW1lID0gJ2EnIGZvciBrZXkgc2hhcmU7 ClQxOiB1cGRhdGUgam9iIHNldCBuYW1lID0gJ2InIHdoZXJlIGlkID0gMTsKWjogdXBkYXRlIGpv YiBzZXQgbmFtZSA9ICdjJyB3aGVyZSBpZCA9IDE7IC0tIHN0YXJ0cyB3YWl0aW5nIGZvciBYClQx OiByb2xsYmFjazsKCkF0IHRoaXMgcG9pbnQsIHRyYW5zYWN0aW9uIFkgaXMgcm9sbGVkIGJhY2sg b24gYWNjb3VudCBvZiBhIGRlYWRsb2NrOiBZCmhvbGRzIHRoZSBoZWF2eXdlaWdodCB0dXBsZSBs b2NrIGFuZCBpcyB3YWl0aW5nIGZvciB0aGUgWG1heCB0byBiZSByZWxlYXNlZCwKd2hpbGUgWiBo b2xkcyBwYXJ0IG9mIHRoZSBtdWx0aXhhY3QgYW5kIHRyaWVzIHRvIGFjcXVpcmUgdGhlIGhlYXZ5 d2VpZ2h0CmxvY2sgKHBlciBwcm90b2NvbCkgYW5kIGdvZXMgdG8gc2xlZXA7IG9uY2UgWCByZWxl YXNlcyBpdHMgcGFydCBvZiB0aGUKbXVsdGl4YWN0LCBaIGlzIGF3YWtlbmVkIG9ubHkgdG8gYmUg cHV0IGJhY2sgdG8gc2xlZXAgb24gdGhlIGhlYXZ5d2VpZ2h0CmxvY2sgdGhhdCBZIGlzIGhvbGRp bmcgd2hpbGUgc2xlZXBpbmcuICBLYWJvb20uCgpUaGlzIGNhbiBiZSBhdm9pZGVkIGJ5IGhhdmlu ZyBaIHNraXAgdGhlIGhlYXZ5d2VpZ2h0IGxvY2sgYWNxdWlzaXRpb24uICBBcwpmYXIgYXMgSSBj YW4gc2VlLCB0aGUgYmlnZ2VzdCBkb3duc2lkZSBpcyB0aGF0IGlmIHRoZXJlIGFyZSBtdWx0aXBs ZSBaCnRyYW5zYWN0aW9ucywgdGhlIG9yZGVyIGluIHdoaWNoIHRoZXkgcmVzdW1lIGFmdGVyIFgg ZmluaXNoZXMgaXMgbm90Cmd1YXJhbnRlZWQuCgpCYWNrcGF0Y2ggdG8gOS42LiAgVGhlIHBhdGNo IGFwcGxpZXMgY2xlYW5seSBvbiA5LjUsIGJ1dCB0aGUgbmV3IHRlc3RzIGRvbid0CndvcmsgdGhl cmUgKGJlY2F1c2UgaXNvbGF0aW9udGVzdGVyIGlzIG5vdCBzbWFydCBlbm91Z2gpLCBzbyBJJ20g bm90IGdvaW5nCnRvIHJpc2sgaXQuCgpBdXRob3I6IE9sZWtzaWkgS2xpdWtpbgpEaXNjdXNzaW9u OiBodHRwczovL3Bvc3Rnci5lcy9tL0I5QzlEN0NELUVCOTQtNDYzNS05MUI2LUU1NThBQ0VDMEVD M0BoaW50Yml0cy5jb20KCkJyYW5jaAotLS0tLS0KUkVMXzEwX1NUQUJMRQoKRGV0YWlscwotLS0t LS0tCmh0dHBzOi8vZ2l0LnBvc3RncmVzcWwub3JnL3BnL2NvbW1pdGRpZmYvMTRhOTFhOGZjMjc5 ZTllYTQzOGY3MzA0OWQ5MzQ4MWQ5OWI1YjlmOQoKTW9kaWZpZWQgRmlsZXMKLS0tLS0tLS0tLS0t LS0Kc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvUkVBRE1FLnR1cGxvY2sgICAgICAgICAgICAgfCAg MTAgKysKc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvaGVhcGFtLmMgICAgICAgICAgICAgICAgICAg fCAgODQgKysrKysrKysrLS0tCi4uLi9leHBlY3RlZC90dXBsZWxvY2stdXBncmFkZS1uby1kZWFk bG9jay5vdXQgICAgIHwgMTUwICsrKysrKysrKysrKysrKysrKysrKwpzcmMvdGVzdC9pc29sYXRp b24vaXNvbGF0aW9uX3NjaGVkdWxlICAgICAgICAgICAgICB8ICAgMSArCi4uLi9zcGVjcy90dXBs ZWxvY2stdXBncmFkZS1uby1kZWFkbG9jay5zcGVjICAgICAgIHwgIDU3ICsrKysrKysrCjUgZmls ZXMgY2hhbmdlZCwgMjgxIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK