Re: Wrong rows estimations with joins of CTEs slows queries by more than factor 500
jian he <jian.universality@gmail.com>
From: jian he <jian.universality@gmail.com>
To: Jian Guo <gjian@vmware.com>
Cc: Tomas Vondra <tomas.vondra@enterprisedb.com>,
Hans Buschmann <buschmann@nidsa.net>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2023-09-06T06:00:39Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow examine_simple_variable() to work on INSERT RETURNING Vars.
- 89b69db82adf 17.0 landed
-
Extract column statistics from CTE references, if possible.
- f7816aec23ee 17.0 landed
-
Remove SQL regression tests for GUCs related to NO_SHOW_ALL
- dbe8a1726cfd 15.3 cited
Attachments
- src_backend_utils_adt_selfuncs.c.gcov.html.png (image/png)
On Tue, Aug 22, 2023 at 10:35 AM Jian Guo <gjian@vmware.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?