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.94.2) (envelope-from ) id 1uWxki-003xlP-KX for pgsql-committers@arkaria.postgresql.org; Wed, 02 Jul 2025 13:43:56 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1uWxkg-000xmj-OC for pgsql-committers@arkaria.postgresql.org; Wed, 02 Jul 2025 13:43:55 +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.94.2) (envelope-from ) id 1uWxip-000wQ1-EH for pgsql-committers@lists.postgresql.org; Wed, 02 Jul 2025 13:42:00 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uWxin-005JGN-2b for pgsql-committers@lists.postgresql.org; Wed, 02 Jul 2025 13:41:59 +0000 Received: from gemulon.postgresql.org ([2001:4800:3e1:1::198]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uWxil-00EOOB-OD for pgsql-committers@lists.postgresql.org; Wed, 02 Jul 2025 13:41:55 +0000 Received: from localhost ([127.0.0.1] helo=gemulon.postgresql.org) by gemulon.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1uWxik-004MD7-22 for pgsql-committers@lists.postgresql.org; Wed, 02 Jul 2025 13:41:54 +0000 Content-Type: multipart/mixed; boundary="===============1415324227798116786==" MIME-Version: 1.0 From: Peter Geoghegan To: pgsql-committers@lists.postgresql.org Subject: pgsql: Make handling of redundant nbtree keys more robust. X-Auto-Response-Suppress: All Auto-Submitted: auto-generated Message-Id: Date: Wed, 02 Jul 2025 13:41:54 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============1415324227798116786== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 TWFrZSBoYW5kbGluZyBvZiByZWR1bmRhbnQgbmJ0cmVlIGtleXMgbW9yZSByb2J1c3QuCgpuYnRy ZWUgcHJlcHJvY2Vzc2luZydzIGhhbmRsaW5nIG9mIHJlZHVuZGFudCAoYW5kIGNvbnRyYWRpY3Rv cnkpIGtleXMKY3JlYXRlZCBwcm9ibGVtcyBmb3Igc2NhbnMgd2l0aCA9IGFycmF5cy4gIEl0IHdh cyBqdXN0IGFib3V0IHBvc3NpYmxlCmZvciBhIHNjYW4gd2l0aCBhbiA9IGFycmF5IGtleSBhbmQg b25lIG9yIG1vcmUgcmVkdW5kYW50IGtleXMgKGtleXMgdGhhdApwcmVwcm9jZXNzaW5nIGNvdWxk IG5vdCBlbGltaW5hdGUgZHVlIGFuIGluY29tcGxldGUgb3BmYW1pbHkgYW5kIGEKY3Jvc3MtdHlw ZSBrZXkpIHRvIGdldCBzdHVjay4gIFRlc3RpbmcgaGFzIHNob3duIHRoYXQgaW5maW5pdGUgY3lj bGluZwp3aGVyZSB0aGUgc2NhbiBuZXZlciBtYW5hZ2VzIHRvIG1ha2UgZm9yd2FyZCBwcm9ncmVz cyB3YXMgcG9zc2libGUuClRoaXMgY291bGQgaGFwcGVuIHdoZW4gdGhlIHNjYW4ncyBhcnJheXMg d2VyZSByZXNldCBpbiBfYnRfcmVhZHBhZ2Uncwpmb3JjZW5vbnJlcXVpcmVkPXRydWUgcGF0aCAo YWRkZWQgYnkgYnVnZml4IGNvbW1pdCA1ZjRkOThkNCkgd2hlbiB0aGUKYXJyYXlzIHdlcmVuJ3Qg YXQgbGVhc3QgYWR2YW5jZWQgdXAgdG8gdGhlIHNhbWUgcG9pbnQgdGhhdCB0aGV5IHdlcmUgaW4K YXQgdGhlIHN0YXJ0IG9mIHRoZSBfYnRfcmVhZHBhZ2UgY2FsbC4gIEVhcmxpZXIgcmVkdW5kYW50 IGtleXMgcHJldmVudGVkCnRoZSBmaW5hbHR1cCBjYWxsIHRvIF9idF9hZHZhbmNlX2FycmF5X2tl eXMgZnJvbSByZWFjaGluZyBsb3dlci1vcmRlcgprZXlzIHRoYXQgbmVlZGVkIHRvIGJlIHVzZWQg dG8gc3VmZmljaWVudGx5IGFkdmFuY2UgdGhlIHNjYW4ncyBhcnJheXMuCgpUbyBmaXgsIG1ha2Ug cHJlcHJvY2Vzc2luZyBsZWF2ZSB0aGUgc2NhbidzIGtleXMgaW4gYSBzdGF0ZSB0aGF0IGlzIGFz CmNsb3NlIGFzIHBvc3NpYmxlIHRvIGhvdyBpdCdsbCB1c3VhbGx5IGxlYXZlIHRoZW0gKGluIHRo ZSBjb21tb24gY2FzZQp3aGVyZSB0aGVyZSdzIG5vIHJlZHVuZGFudCBrZXlzIHRoYXQgcHJlcHJv Y2Vzc2luZyBmYWlsZWQgdG8gZWxpbWluYXRlKS4KTm93IG5idHJlZSBwcmVwcm9jZXNzaW5nIF9y ZWxpYWJseV8gbGVhdmVzIGJlaGluZCBhdCBtb3N0IG9uZSByZXF1aXJlZAo+Lz49IGtleSBwZXIg aW5kZXggY29sdW1uLCBhbmQgYXQgbW9zdCBvbmUgcmVxdWlyZWQgPC88PSBrZXkgcGVyIGluZGV4 CmNvbHVtbi4gIENvbHVtbnMgdGhhdCBoYXZlIG9uZSBvciBtb3JlID0ga2V5cyB0aGF0IGFyZSBl bGlnaWJsZSB0byBiZQptYXJrZWQgcmVxdWlyZWQgKGJhc2VkIG9uIHRoZSB0cmFkaXRpb25hbCBy dWxlcykgcHJpb3JpdGl6ZSB0aGUgPSBrZXlzCm92ZXIgcmVkdW5kYW50IGluZXF1YWxpdHkga2V5 czsgdGhleSdsbCBfcmVsaWFibHlfIGJlIGxlZnQgd2l0aCBvbmx5IG9uZQpvZiB0aGUgPSBrZXlz IGFzIHRoZSBpbmRleCBjb2x1bW4ncyBvbmx5IHJlcXVpcmVkIGtleS4KCktleXMgdGhhdCBhcmUg bm90IG1hcmtlZCByZXF1aXJlZCAod2hldGhlciBkdWUgdG8gdGhlIG5ldyBwcmVwcm9jZXNzaW5n CnN0ZXAgcnVubmluZyBvciBmb3Igc29tZSBvdGhlciByZWFzb24pIGFyZSByZWxvY2F0ZWQgdG8g dGhlIGVuZCBvZiB0aGUKc28tPmtleURhdGFbXSBhcnJheSBhcyBuZWVkZWQuICBUaGF0IHdheSB0 aGV5J2xsIGFsd2F5cyBiZSBldmFsdWF0ZWQKYWZ0ZXIgdGhlIHNjYW4ncyByZXF1aXJlZCBrZXlz LCBhbmQgc28gY2Fubm90IHByZXZlbnQgY29kZSBpbiBwbGFjZXMKbGlrZSBfYnRfYWR2YW5jZV9h cnJheV9rZXlzIGFuZCBfYnRfZmlyc3QgZnJvbSByZWFjaGluZyBhIHJlcXVpcmVkIGtleS4KCkFs c28gdGVhY2ggX2J0X2ZpcnN0IHRvIGRlY2lkZSB3aGljaCBpbml0aWFsIHBvc2l0aW9uaW5nIGtl eXMgdG8gdXNlCmJhc2VkIG9uIHRoZSBzYW1lIHJlcXVpcmVkbmVzcyBtYXJraW5ncyB0aGF0IGhh dmUgbG9uZyBiZWVuIHVzZWQgYnkKX2J0X2NoZWNra2V5cy9fYnRfYWR2YW5jZV9hcnJheV9rZXlz LiAgVGhpcyBpcyBhIG5lY2Vzc2FyeSBjb25kaXRpb24gZm9yCnJlbGlhYmx5IGF2b2lkaW5nIGlu ZmluaXRlIGN5Y2xpbmcuICBfYnRfYWR2YW5jZV9hcnJheV9rZXlzIGV4cGVjdHMgdG8KYmUgYWJs ZSB0byByZWFzb24gYWJvdXQgd2hhdCdsbCBoYXBwZW4gaW4gdGhlIG5leHQgX2J0X2ZpcnN0IGNh bGwgc2hvdWxkCml0IHN0YXJ0IGFub3RoZXIgcHJpbWl0aXZlIGluZGV4IHNjYW4sIGJ5IGV2YWx1 YXRpbmcgaW5lcXVhbGl0eSBrZXlzCnRoYXQgd2VyZSBtYXJrZWQgcmVxdWlyZWQgaW4gdGhlIG9w cG9zaXRlLXRvLXNjYW4gc2NhbiBkaXJlY3Rpb24gb25seS4KTm93IGV2ZXJ5Ym9keSAoX2J0X2Zp cnN0LCBfYnRfY2hlY2trZXlzLCBhbmQgX2J0X2FkdmFuY2VfYXJyYXlfa2V5cykKd2lsbCBhbHdh eXMgYWdyZWUgb24gd2hpY2ggZXhhY3Qga2V5IHdpbGwgYmUgdXNlZCBvbiBlYWNoIGluZGV4IGNv bHVtbgp0byBzdGFydCBhbmQvb3IgZW5kIHRoZSBzY2FuIChleGNlcHQgd2hlbiByb3cgY29tcGFy ZSBrZXlzIGFyZSBpbnZvbHZlZCwKd2hpY2ggaGF2ZSBzaW1pbGFyIHByb2JsZW1zIG5vdCBhZGRy ZXNzZWQgYnkgdGhpcyBjb21taXQpLgoKQW4gdXBjb21pbmcgY29tbWl0IHdpbGwgZmluaXNoIG9m ZiB0aGUgd29yayBzdGFydGVkIGJ5IHRoaXMgY29tbWl0IGJ5Cmhhcm1vbml6aW5nIGhvdyBfYnRf Zmlyc3QsIF9idF9jaGVja2tleXMsIGFuZCBfYnRfYWR2YW5jZV9hcnJheV9rZXlzCmFwcGx5IHJv dyBjb21wYXJlIGtleXMgdG8gc3RhcnQgYW5kIGVuZCBzY2Fucy4KClRoaXMgZml4ZXMgd2hhdCB3 YXMgYXJndWFibHkgYW4gb3ZlcnNpZ2h0IGluIGVpdGhlciBjb21taXQgNWY0ZDk4ZDQgb3IKY29t bWl0IDhhNTEwMjc1LgoKQXV0aG9yOiBQZXRlciBHZW9naGVnYW4gPHBnQGJvd3QuaWU+ClJldmll d2VkLUJ5OiBIZWlra2kgTGlubmFrYW5nYXMgPGhlaWtraS5saW5uYWthbmdhc0Bpa2kuZmk+CkRp c2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FIMi1Xej1kczRNKzNOWE1nd3hZeHFVOE1V TGFMZjY5Nl92NWc9OVdObVdMMj1VbzJBQG1haWwuZ21haWwuY29tCkJhY2twYXRjaC10aHJvdWdo OiAxOAoKQnJhbmNoCi0tLS0tLQptYXN0ZXIKCkRldGFpbHMKLS0tLS0tLQpodHRwczovL2dpdC5w b3N0Z3Jlc3FsLm9yZy9wZy9jb21taXRkaWZmL2YwOTgxNmEwYTdjMTM4NzUxYjc2YmEzNjc2YWRi NzVjOTRiZTJhYjAKCk1vZGlmaWVkIEZpbGVzCi0tLS0tLS0tLS0tLS0tCnNyYy9iYWNrZW5kL2Fj Y2Vzcy9uYnRyZWUvbmJ0cHJlcHJvY2Vzc2tleXMuYyB8IDM4NCArKysrKysrKysrKysrKysrKysr KysrKy0tLQpzcmMvYmFja2VuZC9hY2Nlc3MvbmJ0cmVlL25idHNlYXJjaC5jICAgICAgICAgfCAy MDQgKysrKysrKy0tLS0tLS0Kc3JjL2JhY2tlbmQvYWNjZXNzL25idHJlZS9uYnR1dGlscy5jICAg ICAgICAgIHwgMTM2ICstLS0tLS0tLQozIGZpbGVzIGNoYW5nZWQsIDQ1NSBpbnNlcnRpb25zKCsp LCAyNjkgZGVsZXRpb25zKC0pCgo= --===============1415324227798116786==--