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 1vLmp2-00AKnr-18 for pgsql-committers@arkaria.postgresql.org; Wed, 19 Nov 2025 18:22:28 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vLmp0-00EXIH-35 for pgsql-committers@arkaria.postgresql.org; Wed, 19 Nov 2025 18:22:27 +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 1vLmp0-00EXGh-2H for pgsql-committers@lists.postgresql.org; Wed, 19 Nov 2025 18:22:27 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vLmoy-000NhM-11 for pgsql-committers@lists.postgresql.org; Wed, 19 Nov 2025 18:22:26 +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 1vLmox-0010NH-71 for pgsql-committers@lists.postgresql.org; Wed, 19 Nov 2025 18:22:23 +0000 Received: from localhost ([127.0.0.1] helo=gemulon.postgresql.org) by gemulon.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vLmow-000Kte-2i for pgsql-committers@lists.postgresql.org; Wed, 19 Nov 2025 18:22:23 +0000 Content-Type: multipart/mixed; boundary="===============3207270895615732845==" MIME-Version: 1.0 From: Tom Lane To: pgsql-committers@lists.postgresql.org Subject: pgsql: Speed up eqjoinsel() with lots of MCV entries. X-Auto-Response-Suppress: All Auto-Submitted: auto-generated Message-Id: Date: Wed, 19 Nov 2025 18:22:23 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============3207270895615732845== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 U3BlZWQgdXAgZXFqb2luc2VsKCkgd2l0aCBsb3RzIG9mIE1DViBlbnRyaWVzLgoKSWYgYm90aCBz aWRlcyBvZiB0aGUgb3BlcmF0b3IgaGF2ZSBtb3N0LWNvbW1vbi12YWx1ZSBzdGF0aXN0aWNzLApl cWpvaW5zZWwgd2FudHMgdG8gY2hlY2sgd2hpY2ggTUNWcyBoYXZlIG1hdGNoZXMgb24gdGhlIG90 aGVyIHNpZGUuCkZvcm1lcmx5IGl0IGRpZCB0aGlzIHdpdGggYSBkdW1iIGNvbXBhcmUtYWxsLXRo ZS1lbnRyaWVzIGxvb3AsCndoaWNoIGhhZCBPKE5eMikgYmVoYXZpb3IgZm9yIGxvbmcgTUNWIGxp c3RzLiAgV2hlbiB0aGF0IGNvZGUgd2FzCndyaXR0ZW4sIHR3ZW50eS1wbHVzIHllYXJzIGFnbywg dGhhdCBzZWVtZWQgdG9sZXJhYmxlOyBidXQgbm93YWRheXMKcGVvcGxlIGZyZXF1ZW50bHkgdXNl IG11Y2ggbGFyZ2VyIHN0YXRpc3RpY3MgdGFyZ2V0cywgc28gdGhhdCB0aGUKTyhOXjIpIGJlaGF2 aW9yIGNhbiBodXJ0IHF1aXRlIGEgYml0LgoKVG8gYWRkIGluc3VsdCB0byBpbmp1cnksIHdoZW4g YXNrZWQgZm9yIHNlbWlqb2luIHNlbWFudGljcywgdGhlCmVudGlyZSBjb21wYXJpc29uIGxvb3Ag d2FzIGRvbmUgb3ZlciwgZXZlbiB0aG91Z2ggd2UgZnJlcXVlbnRseQprbm93IHRoYXQgaXQgd2ls bCB5aWVsZCBleGFjdGx5IHRoZSBzYW1lIHJlc3VsdHMuCgpUbyBpbXByb3ZlIG1hdHRlcnMsIHN3 aXRjaCB0byB1c2luZyBhIGhhc2ggdGFibGUgdG8gcGVyZm9ybSB0aGUKbWF0Y2hpbmcuICBUZXN0 aW5nIHN1Z2dlc3RzIHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBkYXRhIHR5cGUsIHdlIG1heQpuZWVk IHVwIHRvIGFib3V0IDEwMCBNQ1ZzIG9uIGVhY2ggc2lkZSB0byBhbW9ydGl6ZSB0aGUgZXh0cmEg Y29zdHMKb2Ygc2V0dGluZyB1cCB0aGUgaGFzaCB0YWJsZSBhbmQgcGVyZm9ybWluZyBoYXNoLXZh bHVlIGNvbXB1dGF0aW9uczsKc28gY29udGludWUgdG8gdXNlIHRoZSBvbGQgbG9vcGluZyBtZXRo b2Qgd2hlbiB0aGVyZSBhcmUgZmV3ZXIgTUNWcwp0aGFuIHRoYXQuCgpBbHNvLCByZWZhY3RvciBz byB0aGF0IHdlIGRvbid0IHJlcGVhdCB0aGUgbWF0Y2hpbmcgd29yayB1bmxlc3MKd2UgcmVhbGx5 IG5lZWQgdG8sIHdoaWNoIG9jY3VycyBvbmx5IGluIHRoZSB1bmNvbW1vbiBjYXNlIHdoZXJlCmVx am9pbnNlbF9zZW1pIGRlY2lkZXMgdG8gdHJ1bmNhdGUgdGhlIHNldCBvZiBpbm5lciBNQ1ZzIGl0 CmNvbnNpZGVycy4gIFRoZSByZWZhY3RvcmluZyBhbHNvIGdvdCByaWQgb2YgdGhlIG5lZWQgdG8g dXNlIHRoZQpwcmVzZW50ZWQgb3BlcmF0b3IncyBjb21tdXRhdG9yLiAgUmVhbC13b3JsZCBvcGVy YXRvcnMgdGhhdCBhcmUKdXNpbmcgZXFqb2luc2VsIHNob3VsZCBwcmV0dHkgbXVjaCBhbHdheXMg aGF2ZSBjb21tdXRhdG9ycywgYnV0CmF0IHRoZSB2ZXJ5IGxlYXN0IHRoaXMgc2F2ZXMgYSBmZXcg c3lzY2FjaGUgbG9va3Vwcy4KCkF1dGhvcjogSWxpYSBFdmRva2ltb3YgPGlseWEuZXZkb2tpbW92 QHRhbnRvcmxhYnMuY29tPgpDby1hdXRob3JlZC1ieTogRGF2aWQgR2VpZXIgPGdlaWRhdi5wZ0Bn bWFpbC5jb20+ClJldmlld2VkLWJ5OiBUb20gTGFuZSA8dGdsQHNzcy5wZ2gucGEudXM+CkRpc2N1 c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vMjBlYThiZjUtMzU2OS00ZTQ2LTkyZWYtZWJiMjY2 NmRlYmY2QHRhbnRvcmxhYnMuY29tCgpCcmFuY2gKLS0tLS0tCm1hc3RlcgoKRGV0YWlscwotLS0t LS0tCmh0dHBzOi8vZ2l0LnBvc3RncmVzcWwub3JnL3BnL2NvbW1pdGRpZmYvMDU3MDEyYjIwNWEw ODJlYzkzMGNkN2JiN2Y2NjYzNTE2YmUwMTFlMgoKTW9kaWZpZWQgRmlsZXMKLS0tLS0tLS0tLS0t LS0Kc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3NlbGZ1bmNzLmMgfCA1NTQgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tCnNyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0 IHwgICAzICsKMiBmaWxlcyBjaGFuZ2VkLCA0MzYgaW5zZXJ0aW9ucygrKSwgMTIxIGRlbGV0aW9u cygtKQoK --===============3207270895615732845==--