| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Ilia Evdokimov <ilya(dot)evdokimov(at)tantorlabs(dot)com> |
| Cc: | David Geier <geidav(dot)pg(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: Use merge-based matching for MCVs in eqjoinsel |
| Date: | 2025-11-17 18:44:33 |
| Message-ID: | 843059.1763405073@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
I wrote:
> Actually, after sleeping on it it seems like the obvious thing is
> to test "sslot1.nvalues * sslot2.nvalues", since the work we are
> thinking about saving scales as that product. But I'm not sure
> what threshold value to use if we do that. Maybe around 10000?
Or maybe better, since we are considering an O(m*n) algorithm
versus an O(m+n) one, we could check whether
sslot1.nvalues * sslot2.nvalues - (sslot1.nvalues + sslot2.nvalues)
exceeds some threshold. But that doesn't offer any insight into
just what the threshold should be, either.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Nathan Bossart | 2025-11-17 18:50:42 | Re: postgresql.conf.sample tab width |
| Previous Message | Sami Imseih | 2025-11-17 18:35:46 | Re: Report oldest xmin source when autovacuum cannot remove tuples |