Re: Hash-based MCV matching for large IN-lists

Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>

From: Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>
To: Zsolt Parragi <zsolt.parragi@percona.com>, David Geier <geidav.pg@gmail.com>, Chengpeng Yan <chengpeng_yan@outlook.com>, Tatsuya Kawata <kawatatatsuya0913@gmail.com>
Cc: "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2026-06-23T13:27:28Z
Lists: pgsql-hackers

Attachments

Rebased patch after 06e94ec (Fix missed checks for hashability of 
container-type equality): the new `scalararray_mcv_hash_match()` now 
calls `get_op_hash_functions_ext()` instead of 
`get_op_hash_functions()`, passing `nominal_element_type` as the input 
type so that container-type operators are correctly rejected when their 
element type is not hashable.

--
Best regards,
Ilia Evdokimov,
Tantor Labs LLC,
https://tantorlabs.com/

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Short-circuit row estimation in NOT IN containing NULL consts