From: | Zaid Shabbir <zaidshabbir(at)gmail(dot)com> |
---|---|
To: | Sindhu S <sindhusanti(at)gmail(dot)com> |
Cc: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Subject: | Re: Report Postgres Bug - Unlogged table sequence |
Date: | 2024-08-19 13:41:19 |
Message-ID: | CABCJe_WhYmb38MpLqFRnynwYbmoETwzWeGatobs3d=rFmnv__A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Hello Sindhu,
Regarding the issue you reported for Unlogged table restore, do you also
face a similar issue while performing pg_upgrade from 15.x to 16.x.
Can you please explain your scenario like the older postgresql version you
are using and complete the command for upgradation ?
Thanks & Regards,
Zaid
On Mon, Aug 19, 2024 at 10:48 AM Sindhu S <sindhusanti(at)gmail(dot)com> wrote:
>
> In 15.7 and 16.3 Release Notes, I found a change to an unlogged table's
> sequence.
>
> Make ALTER TABLE ... ADD COLUMN create identity/serial sequences with the
> same persistence as their owning tables (Peter Eisentraut)
>
> CREATE UNLOGGED TABLE will make any owned sequences be unlogged too. ALTER
> TABLE missed that consideration, so that an added identity column would
> have a logged sequence, which seems pointless.
>
> Major version upgrade to 15.7 or 16.3 is failing on pg_restore step with
> following error,
>
> pg_restore: creating TABLE "public.X"
> pg_restore: creating SEQUENCE "public.X_id_seq"
> pg_restore: while PROCESSING TOC:
> pg_restore: from TOC entry 200; 1259 <NUMBER> SEQUENCE X_id_seq
> sindhu.selvaraj
> pg_restore: error: could not execute query: ERROR: unexpected request for
> new relfilenode in binary upgrade mode
> Command was:
> -- For binary upgrade, must preserve pg_class oids and relfilenodes
> SELECT
> pg_catalog.binary_upgrade_set_next_heap_pg_class_oid('<NUMBER>'::pg_catalog.oid);
> SELECT
> pg_catalog.binary_upgrade_set_next_heap_relfilenode('<NUMBER>'::pg_catalog.oid);
> ALTER TABLE "public"."X" ALTER COLUMN "id" ADD GENERATED BY DEFAULT AS
> IDENTITY (
> SEQUENCE NAME "public"."X_id_seq"
> START WITH 1
> INCREMENT BY 1
> NO MINVALUE
> NO MAXVALUE
> CACHE 1
> );
> ALTER SEQUENCE "public"."X_id_seq" SET LOGGED;
>
> This has been spotted in local postgres installed in MAC as well as in AWS
> RDS.
> We had to change the unlogged table to logged and then upgrade.
> I am reporting this as a bug. Please keep us updated.
>
> Regards,
> Sindhu
>
From | Date | Subject | |
---|---|---|---|
Next Message | Tomas Vondra | 2024-08-19 14:06:57 | Re: BUG #18569: Memory leak in Postgres Enterprise server |
Previous Message | Daniel Gustafsson | 2024-08-19 12:52:45 | Re: TLS session tickets disabled? |