Re: pg_basebackup failure after setting default_table_access_methodoption - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: pg_basebackup failure after setting default_table_access_methodoption
Date
Msg-id 20190606070636.GA10729@paquier.xyz
Whole thread Raw
In response to Re: pg_basebackup failure after setting default_table_access_method option  (Haribabu Kommi <kommi.haribabu@gmail.com>)
Responses Re: pg_basebackup failure after setting default_table_access_method option
Re: pg_basebackup failure after setting default_table_access_methodoption
List pgsql-hackers
On Thu, Jun 06, 2019 at 11:19:48AM +1000, Haribabu Kommi wrote:
> Thanks for the details steps to reproduce the bug, I am also able to
> reproduce the problem.

This way is even more simple, no need for zheap to be around:
=# create access method heap2 TYPE table HANDLER heap_tableam_handler;
CREATE ACCESS METHOD
And then:
PGOPTIONS="-c default_table_access_method=heap2" psql "replication=1"
psql: error: could not connect to server: FATAL:  cannot read pg_class
without having selected a database

> Thanks for the patch and it fixes the problem.

I was wondering if we actually need at all a catalog lookup at this
stage, simplifying get_table_am_oid() on the way so as we always
throw an error (its missing_ok is here to allow a proper error in the
GUC context).  The table AM lookup happens only when creating a table,
so we could just get a failure when attempting to create a table with
this incorrect value.

Actually, when updating a value and reloading and/or restarting the
server, it is possible to easily get in a state where we have an
invalid table AM parameter stored in the GUC, which is what the
callback is here to avoid.  If you attempt to update the parameter
with ALTER SYSTEM, then the command complains.  So it seems to me that
the user experience is inconsistent.
--
Michael


Attachment

pgsql-hackers by date:

Previous
From: Amit Langote
Date:
Subject: Re: hyrax vs. RelationBuildPartitionDesc
Next
From: Heikki Linnakangas
Date:
Subject: Re: Pluggable Storage - Andres's take