RE: pg_rewind with --write-recovery-conf option doesn't write dbname to primary_conninfo value. - Mailing list pgsql-hackers

From Hayato Kuroda (Fujitsu)
Subject RE: pg_rewind with --write-recovery-conf option doesn't write dbname to primary_conninfo value.
Date
Msg-id OSCPR01MB149663C885B9D681A24774F3FF5F52@OSCPR01MB14966.jpnprd01.prod.outlook.com
Whole thread Raw
Responses Re: pg_rewind with --write-recovery-conf option doesn't write dbname to primary_conninfo value.
Re: pg_rewind with --write-recovery-conf option doesn't write dbname to primary_conninfo value.
List pgsql-hackers
Dear Sawada-san,

> I think it's a good idea to support it at least on HEAD. I've attached
> a patch for that.

+1. I've confirmed that pg_rewind and -R can't output dbname for now,
and your patch allows to do it.

Few comments for your patch.

1.

pg_basebackup.sgml has below description. I feel this can be ported to
pg_rewind.sgml as well.

```
The dbname will be recorded only if the dbname was
specified explicitly in the connection string or <link linkend="libpq-envars">
environment variable</link>.
```

2.
I'm not sure whether recovery_gen.h/c is a correct place for the exported function
GetDbnameFromConnectionOptions(). The function itself does not handle
postgresql.cuto.conf file.
I seeked other header files and felt that connect_utils.h might be.

```
/*-------------------------------------------------------------------------
 *
 * Facilities for frontend code to connect to and disconnect from databases.
```

Another idea is to change the third API to accept the whole connection string, and
it extracts dbname from it. In this approach we can make GetDbnameFromConnectionOptions()
to static function - which does not feel strange for me.

Best regards,
Hayato Kuroda
FUJITSU LIMITED


pgsql-hackers by date:

Previous
From: Amul Sul
Date:
Subject: Re: NOT ENFORCED constraint feature
Next
From: Peter Smith
Date:
Subject: Re: Introduce XID age and inactive timeout based replication slot invalidation