| From: | Álvaro Herrera <alvherre(at)kurilemu(dot)de> |
|---|---|
| To: | o15611(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Subject: | Re: BUG #19580: Can not FINALIZE detach partition. Table in stuck |
| Date: | 2026-07-27 11:13:30 |
| Message-ID: | amc8GkgJ5p7rvp8m@alvherre.pgsql |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On 2026-Jul-25, PG Bug reporting form wrote:
> drop table if exists t;
> CREATE TABLE t (id bigint GENERATED BY DEFAULT AS IDENTITY, reg int, primary
> key (id, reg)) PARTITION BY RANGE (id);
> CREATE TABLE t1 PARTITION OF t FOR VALUES FROM (1) TO (20) PARTITION BY
> RANGE(reg);
> CREATE TABLE t11 PARTITION OF t1 FOR VALUES FROM (1) TO (10);
> ALTER TABLE t DETACH PARTITION t1;
> ALTER TABLE t ATTACH PARTITION t1 FOR VALUES FROM (1) TO (20);
>
> "generated by default as identity" was added only to t1 and not in t11.
Hmm, I think the bug here is that ATTACH PARTITION seems to have
neglected to add the GENERATED BY expression to that column of t11.
When the table was initially created in line 4, the generation
expression was there, but DETACH removes it, and then ATTACH doesn't put
it back.
(If you start this sequence from scratch and try the DETACH CONCURRENTLY
at after creating t11 but before doing the DETACH/ATTACH dance, it seems
to work properly.)
> But, the problem is:
> ALTER TABLE t DETACH PARTITION t1 CONCURRENTLY;
> ERROR: column "id" of relation "t11" is not an identity column
Even if the above is fixed, maybe this should somehow be made a WARNING
instead of a hard error, to avoid brittleness in DETACH in cases of
bogus catalog contents.
--
Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/
"XML!" Exclaimed C++. "What are you doing here? You're not a programming
language."
"Tell that to the people who use me," said XML.
https://burningbird.net/the-parable-of-the-languages/
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2026-07-27 12:32:34 | Re: BUG #19581: Non-UTF8-encoded text in log file |
| Previous Message | Álvaro Herrera | 2026-07-27 11:05:50 | Re: REPACK (CONCURRENTLY) doesn't handle invalid indexes |