Re: BUG #18297: Error when adding a column to a parent table with complex inheritance

From: Alexander Lakhin <exclusion(at)gmail(dot)com>
To: Tender Wang <tndrwang(at)gmail(dot)com>, Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #18297: Error when adding a column to a parent table with complex inheritance
Date: 2024-01-18 09:00:01
Message-ID: 38de09cc-70f3-28ee-fe67-ae13cba23e61@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hello Tender Wang and Richard,

17.01.2024 18:03, Tender Wang wrote:
> Thanks for reviewing the patch.
> The attached v2 patch includes all review advices.
>
> --
> Tender Wang
> OpenPie: https://en.openpie.com/
>
> Richard Guo <guofenglinux(at)gmail(dot)com> 于2024年1月17日周三 19:54写道:
>
>
> Indeed.  We may update the same child column multiple times, but there
> is no CommandCounterIncrement between.  Nice catch and +1 to the fix.
>
> To nitpick, how about go with the comment as
>
>     /* Make sure the child column change is visible */
>
> which seems clearer.
>
> Also I think it'd be better to include a blank line before and after the
> new CommandCounterIncrement statement.
>
> Also I suggest to drop the new added tables after we've run ALTER TABLE
> in the test case.
>
> Thanks
> Richard
>

Thank you for working on this!

(Maybe it's possible to slightly modify an existing hierarchy with tables
a, b, c in inherit.sql for the purpose of the check added.)

I've found another situation where the same error is produced:
CREATE ROLE u;
DROP ROLE u, u;
ERROR:  tuple already updated by self

Perhaps, you would like to fix it in passing too. I've rechecked all the
other object types, that can be DROPped with a list (namely, AGGREGATE,
DOMAIN, EXTENSION, FOREIGN DATA WRAPPER, FOREIGN TABLE, FUNCTION, INDEX,
MATERIALIZED VIEW, OPERATOR, PROCEDURE, ROUTINE, SEQUENCE, SERVER,
STATISTICS, TABLE, TYPE, VIEW), and found that all of these handle
such duplicate entries with no error.

Best regards,
Alexander

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tender Wang 2024-01-18 15:42:21 Re: BUG #18297: Error when adding a column to a parent table with complex inheritance
Previous Message Bowen Shi 2024-01-18 07:29:52 Re: Excessive number of replication slots for 12->14 logical replication