Re: [PoC] Reducing planning time when tables have many partitions
Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
From: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
To: Andrey Lepikhov <a.lepikhov@postgrespro.ru>
Cc: Yuya Watari <watari.yuya@gmail.com>, Thom Brown <thom@linux.com>, David Rowley <dgrowleyml@gmail.com>,
Alvaro Herrera <alvherre@alvh.no-ip.org>, Zhang Mingli <zmlpostgres@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>
Date: 2023-08-08T06:19:40Z
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 →
-
Update wording in optimizer/README for EquivalenceClasses
- d7c04db27aeb 18.0 landed
-
Speedup child EquivalenceMember lookup in planner
- d69d45a5a956 18.0 landed
-
Allow planner to use Merge Append to efficiently implement UNION
- 66c0185a3d14 17.0 cited
-
Remove trailing zero words from Bitmapsets
- a8c09daa8bb1 17.0 cited
-
Make Vars be outer-join-aware.
- 2489d76c4906 16.0 cited
-
Avoid making commutatively-duplicate clauses in EquivalenceClasses.
- a5fc46414deb 16.0 cited
Hi Andrey, On Tue, Aug 8, 2023 at 8:52 AM Andrey Lepikhov <a.lepikhov@postgrespro.ru> wrote: > It is a positive thing to access some planner internals from the > console, of course. My point is dedicated to the structuration of an > EXPLAIN output and is caused by two reasons: > 1. I use the EXPLAIN command daily to identify performance issues and > the optimiser's weak points. According to the experience, when you have > an 'explain analyze' containing more than 100 strings, you try removing > unnecessary information to improve observability. It would be better to > have the possibility to see an EXPLAIN with different levels of the > output details. Flexibility here reduces a lot of manual work, sometimes. I use the json output format to extract the interesting parts of EXPLAIN output. See my SQL scripts attached upthread. That way I can ignore new additions like this. > 2. Writing extensions and having an explain analyze in the regression > test, we must create masking functions just to make the test more > stable. That additional work can be avoided with another option, like > MEMUSAGE ON/OFF. We already have a masking function in-place. See changes to explain.out in my proposed patch at [1] > > I will propose it as a separate patch in the next commitfest and will > > seek opinions from other hackers. > Cool, good news. Done. Commitfest entry https://commitfest.postgresql.org/44/4492/ [1] https://www.postgresql.org/message-id/CAExHW5sZA=5LJ_ZPpRO-w09ck8z9p7eaYAqq3Ks9GDfhrxeWBw@mail.gmail.com -- Best Wishes, Ashutosh Bapat