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

Alena Rybakina <lena.ribackina@yandex.ru>

From: Alena Rybakina <lena.ribackina@yandex.ru>
To: Yuya Watari <watari.yuya@gmail.com>
Cc: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>, Lepikhov Andrei <a.lepikhov@postgrespro.ru>, David Rowley <dgrowleyml@gmail.com>, Thom Brown <thom@linux.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-11-17T21:04:12Z
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.

Attachments

Hi, all!

While I was reviewing the patches, I noticed that they needed some 
rebasing, and in one of the patches 
(Introduce-indexes-for-RestrictInfo.patch) there was a conflict with the 
recently added self-join-removal feature [1]. So, I rebased patches and 
resolved the conflicts. While I was doing this, I found a problem that I 
also fixed:

1. Due to the lack of ec_source_indexes, ec_derive_indexes, we could 
catch an error during the execution of atomic functions such as:

ERROR:  unrecognized token: ")"
Context:  внедрённая в код SQL-функция "shobj_description"

I fixed it.

We save the current reading context before reading the field name, then 
check whether the field has been read and, if not, restore the context 
to allow the next macro reads the field name correctly.

I added the solution to the bug_related_atomic_function.diff file.

2. I added the solution to the conflict to the 
solved_conflict_with_self_join_removal.diff file.

All diff files have already been added to 
v21-0002-Introduce-indexes-for-RestrictInfo patch.


1. 
https://www.postgresql.org/message-id/CAPpHfduLxYm4biJrTbjBxTAW6vkxBswuQ2B%3DgXU%2Bc37QJd6%2BOw%40mail.gmail.com

-- 
Regards,
Alena Rybakina