Re: BUG #17339: Assert failed on attempt to detach a sequence concurrently - Mailing list pgsql-bugs

From Michael Paquier
Subject Re: BUG #17339: Assert failed on attempt to detach a sequence concurrently
Date
Msg-id YcB5K6/Mrh9X82lG@paquier.xyz
Whole thread Raw
In response to BUG #17339: Assert failed on attempt to detach a sequence concurrently  (PG Bug reporting form <noreply@postgresql.org>)
Responses Re: BUG #17339: Assert failed on attempt to detach a sequence concurrently  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
List pgsql-bugs
On Sun, Dec 19, 2021 at 06:00:02AM +0000, PG Bug reporting form wrote:
> CREATE SEQUENCE seq;
> CREATE TABLE range_parted(a int) PARTITION BY RANGE(a);
> ALTER TABLE range_parted DETACH PARTITION seq CONCURRENTLY;

The same error happens additionally for views or materialized views.
Looking at the code, I think that we should just apply
ATSimplePermissions() on (ATT_TABLE | ATT_FOREIGN_TABLE) when
executing the detach command to check for the supported relkinds.
That would make the logic consistent with the attach code path that
does the same check on the partition attached, while generating an
error message already generic enough for this purpose.

Attached is a patch, with some regression tests.
--
Michael

Attachment

pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #17340: Unnest discards rows with empty or null arrays
Next
From: Peter Eisentraut
Date:
Subject: Re: BUG #17339: Assert failed on attempt to detach a sequence concurrently