Re: MERGE PARTITIONS and DEPENDS ON EXTENSION.
Alexander Korotkov <aekorotkov@gmail.com>
From: Alexander Korotkov <aekorotkov@gmail.com>
To: Matheus Alcantara <matheusssilv97@gmail.com>
Cc: Dmitry Koval <d.koval@postgrespro.ru>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2026-04-21T19:35:28Z
Lists: pgsql-hackers
Attachments
- v6-0001-Preserve-extension-dependencies-on-indexes-during.patch (application/octet-stream) patch v6-0001
On Tue, Apr 21, 2026 at 10:23 PM Matheus Alcantara <matheusssilv97@gmail.com> wrote: > On 21/04/26 12:57, Alexander Korotkov wrote: > > I've spotted the following things in this patch. > > 1) The equality of dependencies is not fully checked. We only check > > that for each new dependency, we have the same for previous partition, > > but not vise versa. > > 2) The complexity of dependency checking is O(n^2). > > 3) Usage of citext and other extensions in src/test/regress where they > > might be not available. > > > > Oops, I forgot to replace the citext extension on split partition tests. > > > I've revised the patch. > > 1) collectPartitionIndexExtDeps() is rewritten(). Now it works in > > three phases: collect, sort, compare. The comparison phase requires > > strict equivalence of dependencies and doesn't depend on the order. > > The complexity is now O(n * log(n)), which I think is acceptable. > > 2) PartitionIndexExtDepEntry struct now have indexOid. So, on > > conflict error contains both partition index names. > > 3) Tests moved to > > src/test/modules/test_extensions/sql/test_extdepend.sql where > > test_ext3/test_ext5 extensions are available. > > 4) More tests for different scenarios. > > > > Could you, please, review this changes? > > > > I think that you miss to include the patch? Yep, here it is. ------ Regards, Alexander Korotkov Supabase
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Preserve extension dependencies on indexes during partition merge/split
- 713e553e3213 19 (unreleased) landed