Re: MERGE PARTITIONS and DEPENDS ON EXTENSION.

Matheus Alcantara <matheusssilv97@gmail.com>

From: "Matheus Alcantara" <matheusssilv97@gmail.com>
To: "Kirill Reshke" <reshkekirill@gmail.com>, "Alexander Korotkov" <aekorotkov@gmail.com>
Cc: "Dmitry Koval" <d.koval@postgrespro.ru>, "pgsql-hackers" <pgsql-hackers@postgresql.org>
Date: 2026-04-22T10:58:06Z
Lists: pgsql-hackers
On Wed Apr 22, 2026 at 7:48 AM -03, Kirill Reshke wrote:
>> +-- An index created directly on a partition has no parent in the partitioned
>> +-- index tree; merge must ignore such indexes (they disappear with the old
>> +-- partition).
>> +CREATE INDEX part_extdep_3_extra_idx ON part_extdep_3(x);
>> +ALTER TABLE part_extdep MERGE PARTITIONS (part_extdep_merged, part_extdep_3)
>> +    INTO part_extdep_merged2;
>> +SELECT relname FROM pg_class
>> +WHERE relname LIKE 'part_extdep_merged2%idx' ORDER BY relname;
>
> Looks like this test is also redundant? This does not test new DEPENDS ON logic.
>

I think that this test is useful to ensure that we correctly skip such
indexes created directly on a specific partition. Perhaps we can include
an ALTER INDEX ... DEPENDS ON for this specific index to make it more
consistent with the other tests?

--
Matheus Alcantara
EDB: https://www.enterprisedb.com



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Preserve extension dependencies on indexes during partition merge/split