| From: | jian he <jian(dot)universality(at)gmail(dot)com> |
|---|---|
| To: | Jian Guo <gjian(at)vmware(dot)com> |
| Cc: | Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Hans Buschmann <buschmann(at)nidsa(dot)net>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: Wrong rows estimations with joins of CTEs slows queries by more than factor 500 |
| Date: | 2023-09-06 06:00:39 |
| Message-ID: | CACJufxGKASOPVyELxoZVX4vTOYZiQ53AfYYGm-nAcwrv4G-wsA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Tue, Aug 22, 2023 at 10:35 AM Jian Guo <gjian(at)vmware(dot)com> wrote:
>
> Sure, Tomas.
>
> Here is the PG Commitfest link: https://commitfest.postgresql.org/44/4510/
> ________________________________
hi.
wondering around http://cfbot.cputube.org/
there is a compiler warning: https://cirrus-ci.com/task/6052087599988736
I slightly edited the code, making the compiler warning out.
I am not sure if the following duplicate comment from (rte->rtekind ==
RTE_SUBQUERY && !rte->inh) branch is correct.
/*
* OK, recurse into the subquery. Note that the original setting
* of vardata->isunique (which will surely be false) is left
* unchanged in this situation. That's what we want, since even
* if the underlying column is unique, the subquery may have
* joined to other tables in a way that creates duplicates.
*/
Index varnoSaved = var->varno;
here varnoSaved should be int?
image attached is the coverage report
if I understand coverage report correctly,
`
if (rel->subroot) examine_simple_variable(rel->subroot, var, vardata);
`
the above never actually executed?
| Attachment | Content-Type | Size |
|---|---|---|
| src_backend_utils_adt_selfuncs.c.gcov.html.png | image/png | 472.1 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | John Naylor | 2023-09-06 06:23:43 | Re: [PoC] Improve dead tuple storage for lazy vacuum |
| Previous Message | Nishant Sharma | 2023-09-06 05:55:35 | Re: pg_basebackup: Always return valid temporary slot names |