Re: Problems with estimating OR conditions, IS NULL on LEFT JOINs

From: Andrei Lepikhov <lepihov(at)gmail(dot)com>
To: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Problems with estimating OR conditions, IS NULL on LEFT JOINs
Date: 2025-04-17 12:47:39
Message-ID: c15ffae1-0786-4aff-8e93-00675d6d3dc5@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 6/24/23 13:23, Tomas Vondra wrote:
> I really hope what I just wrote makes at least a little bit of sense.
Here is a continuation of your work:
1. non-matched estimation sophisticated to provide meaningful numbers.
2. unmatched_frac is stored in sjinfo that let us to summarise these
generated nulls along the tree of outer joins.
3. unmatched_frac is used not only for nulltest estimation but also for
correction of stanullfrac and stadistinct values (improves GROUP-BY).
4. EXPLAIN prints number of estimated and actually generated NULLs in
outer-join nodes.

This patch no less ugly than your, may be even more. Tambien, not sure
it became more meaningful. But it helps being applied to some reported
cases I have ;).

--
regards, Andrei Lepikhov

Attachment Content-Type Size
0001-Consider-number-of-nulls-generated-by-inner-side-of-.patch text/x-patch 32.3 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tristan Partin 2025-04-17 13:18:40 Re: Decouple C++ support in Meson's PGXS from LLVM enablement
Previous Message Zhijie Hou (Fujitsu) 2025-04-17 12:46:05 RE: Fix slot synchronization with two_phase decoding enabled