On Thu, Jun 6, 2019 at 1:46 AM vignesh C <vignes...@gmail.com> wrote:

>
> Hi,
>
> *I noticed pg_basebackup failure when default_table_access_method option
> is set.*
>
> *Test steps:*
>
> Step 1: Init database
> ./initdb -D data
>
> Step 2: Start Server
> ./postgres -D data &
>
> Step 3: Set Guc option
> export PGOPTIONS='-c default_table_access_method=zheap'
>
> Step 4: Peform backup
> /pg_basebackup -D backup -p 5432 --no-sync
> 2019-06-05 20:35:04.088 IST [11601] FATAL:  cannot read pg_class without
> having selected a database
> pg_basebackup: error: could not connect to server: FATAL:  cannot read
> pg_class without having selected a database
>
> *Reason why it is failing:*
> pg_basebackup does not use any database to connect to server as it backs
> up the whole data instance.
> As the option default_table_access_method is set.
> It tries to validate this option, but while validating the option in
> ScanPgRelation function:
> if (!OidIsValid(MyDatabaseId))
> elog(FATAL, "cannot read pg_class without having selected a database");
>
> Here as pg_basebackup uses no database the command fails.
>

Thanks for the details steps to reproduce the bug, I am also able to
reproduce the problem.



> Fix:
> The patch has the fix for the above issue:
>
> Let me know your opinion on this.
>

Thanks for the patch and it fixes the problem.

Regards,
Haribabu Kommi
Fujitsu Australia

Reply via email to