Re: [PoC] Reducing planning time when tables have many partitions

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Amit Langote <amitlangote09@gmail.com>
Cc: David Rowley <dgrowleyml@gmail.com>, Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>, Yuya Watari <watari.yuya@gmail.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Dmitry Dolgov <9erthalion6@gmail.com>, PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>, jian he <jian.universality@gmail.com>, Alena Rybakina <lena.ribackina@yandex.ru>, Andrei Lepikhov <a.lepikhov@postgrespro.ru>, Thom Brown <thom@linux.com>, Zhang Mingli <zmlpostgres@gmail.com>
Date: 2025-04-09T05:19:45Z
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 →
  1. Update wording in optimizer/README for EquivalenceClasses

  2. Speedup child EquivalenceMember lookup in planner

  3. Allow planner to use Merge Append to efficiently implement UNION

  4. Remove trailing zero words from Bitmapsets

  5. Make Vars be outer-join-aware.

  6. Avoid making commutatively-duplicate clauses in EquivalenceClasses.

Amit Langote <amitlangote09@gmail.com> writes:
> Should the following paragraph in src/backend/optimizer/README be
> updated to reflect the new reality after recent changes?

>     An EquivalenceClass can contain "em_is_child" members, which are copies
>     of members that contain appendrel parent relation Vars, transposed to
>     contain the equivalent child-relation variables or expressions.

Hm.  They still are "in" the EquivalenceClass in a very real sense;
there is no other data structure that links to them.  So this isn't
incorrect.  I do get your feeling that maybe some rewording is
warranted, but I'm not sure what.

			regards, tom lane