Re: [External] Re: BUG #17409: Unable to alter data type of clustered column which is referenced by foreign key

From: Holly Roberts <holly(dot)roberts(at)starlingbank(dot)com>
To: Japin Li <japinli(at)hotmail(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: [External] Re: BUG #17409: Unable to alter data type of clustered column which is referenced by foreign key
Date: 2022-03-10 14:35:34
Message-ID: CANK_YChiq9gTpNxkqY8j-jsvgi3090bdmVo268CYGg27W-E64A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hello,

Thanks for looking into this issue and coming up with a patch. Has any
further progress been made on getting this into 14 stable?
Apologies if I have missed anything.

Many thanks,
Holly Roberts

On Fri, 18 Feb 2022 at 09:54, Japin Li <japinli(at)hotmail(dot)com> wrote:

>
> On Fri, 18 Feb 2022 at 12:27, Michael Paquier <michael(at)paquier(dot)xyz> wrote:
> > On Fri, Feb 18, 2022 at 01:30:46AM +0800, Japin Li wrote:
> > Reusing the test case at the top of the thread, this can also be
> > triggered for replica identities, as of the code just at the top of
> > what you have patched. See for example:
> > CREATE TABLE parent (
> > parent_field INTEGER CONSTRAINT pk_parent PRIMARY KEY);
> > ALTER TABLE parent REPLICA IDENTITY USING INDEX pk_parent;
> > CREATE TABLE child (
> > child_field INTEGER,
> > CONSTRAINT fk_child FOREIGN KEY (child_field) REFERENCES parent
> (parent_field));
> > -- error here
> > ALTER TABLE parent ALTER COLUMN parent_field SET DATA TYPE BIGINT;
> >
> > We surely should have test cases for all that.
> >
> > Anyway, I'd need to think more about your suggestion, but is that
> > actually the best thing we can do? In this case, we'd attempt to
> > register twice an index to rebuild within
> > RememberIndexForRebuilding(), for the same relation, but there is no
> > need to do so. Shouldn't we try instead to do a better job at
> > scanning the pg_depend entries in ATExecAlterColumnType() and avoid
> > the risk to do the same job twice? That would take care of the
> > replica identity case that I have just mentioned, and of the clustered
> > index case reported upthread.
>
>
> Attach a new patch to fix the replica identify case, also add test cases.
>
> --
> Regrads,
> Japin Li.
> ChengDu WenWu Information Technology Co.,Ltd.
>

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2022-03-11 00:37:45 Re: BUG #17409: Unable to alter data type of clustered column which is referenced by foreign key
Previous Message PG Bug reporting form 2022-03-10 14:19:10 BUG #17432: libraries are missing when installing postGIS in SLES15 SP3, some are part of SLES15 SP4 some not