pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Haiyang Li <mohen.lhy@alibaba-inc.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-bugs <pgsql-bugs@lists.postgresql.org>
Subject:  Re: BUG #19100: Different column type between partitioned table and detached pending partition table make errors
Date: Mon, 03 Nov 2025 17:16:02 +0800
Message-ID: <f2bb794d-96f4-440e-93d3-e5c51fe2b6cc.mohen.lhy@alibaba-inc.com> (raw)
In-Reply-To: <442267.1762108572@sss.pgh.pa.us>
References: <19100-f676a0f5c4723b2f@postgresql.org>
	<442267.1762108572@sss.pgh.pa.us>

Hello,
Thanks for your opinion.
Tom Lane <tgl@sss.pgh.pa.us> 2025-11-3日 02:36 write:
>> IMO, a detach pending child table is not affected by parent's DML or DQL,
>> but should still be affected by parent's DDL.
>
>I think it'd be far safer to refuse all forms of ALTER TABLE until the
> detach is completed.
I have been trying to think of a concrete scenario where this could cause problems
if ALTER TABLE permitted on detach pending partitions.
But I haven't come up with one yet. Could you provide an example or suggest some
possible cases?
OTOH, from a safety perspective, I would argue that pg_dump should avoid emitting
ATTACH PARTITION statements for detach pending child tables.
Regards,
Haiyang Li
------------------------------------------------------------------
From:Tom Lane <tgl@sss.pgh.pa.us>
Send Time:2025年11月3日(周一) 02:36
To:"李海洋(陌痕)"<mohen.lhy@alibaba-inc.com>
CC:"pgsql-bugs"<pgsql-bugs@lists.postgresql.org>
Subject:Re: BUG #19100: Different column type between partitioned table and detached pending partition table make errors
PG Bug reporting form <noreply@postgresql.org> writes:
> It's evident that in both error cases, the failure occurs because
> column name has different data types between the parent and the child
> table. BTW, "\d+ users_p0" error happens when
> pg_get_partition_constraintdef() is called. The root cause seems to be
> that when running:
> ```
> ALTER TABLE users ALTER COLUMN name TYPE char(10);
> ```
> on the parent table, the statement does not affect a child table that is in
> detach pending state.
Ugh.
> IMO, a detach pending child table is not affected by parent's DML or DQL,
> but should still be affected by parent's DDL.
I think it'd be far safer to refuse all forms of ALTER TABLE until the
detach is completed.
 regards, tom lane


view thread (4+ messages)  latest in thread

Message-ID: <f2bb794d-96f4-440e-93d3-e5c51fe2b6cc.mohen.lhy@alibaba-inc.com>
Permalink:  ../f2bb794d-96f4-440e-93d3-e5c51fe2b6cc.mohen.lhy@alibaba-inc.com/
Also on:    postgresql.org/message-id/f2bb794d-96f4-440e-93d3-e5c51fe2b6cc.mohen.lhy@alibaba-inc.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-bugs@postgresql.org
  Cc: mohen.lhy@alibaba-inc.com, tgl@sss.pgh.pa.us, pgsql-bugs@lists.postgresql.org
  Subject: Re:  Re: BUG #19100: Different column type between partitioned table and detached pending partition table make errors
  In-Reply-To: <f2bb794d-96f4-440e-93d3-e5c51fe2b6cc.mohen.lhy@alibaba-inc.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox