On 2022/10/06 22:30, bt22nakamorit wrote:
> Hi,
>
> When walsender process is evoked for logical replication, walsender is connected to a database of the subscriber.
> Naturally, ones would want the name of the connected database to show in the entry of ps command for walsender.
> In detail, running ps aux during the logical replication shows results like the following:
> postgres=# \! ps aux | grep postgres;
> ...
> ACTC-I\+ 14575 0.0 0.0 298620 14228 ? Ss 18:22 0:00 postgres: walsender ACTC-I\nakamorit [local] S
>
> However, since walsender is connected to a database of the subscriber in logical replication,
s/subscriber/publisher ?
> it should show the database name, as in the following:
> postgres=# \! ps aux | grep postgres
> ...
> ACTC-I\+ 15627 0.0 0.0 298624 13936 ? Ss 15:45 0:00 postgres: walsender ACTC-I\nakamorit postgres
>
> Showing the database name should not apply in streaming replication though since walsender process is not connected
toany specific database.
>
> The attached patch adds the name of the connected database to the ps entry of walsender in logical replication, and
notin streaming replication.
>
> Thoughts?
+1
Thanks for the patch!
-
+ printf("fork child process\n");
+ printf(" am_walsender: %d\n", am_walsender);
+ printf(" am_db_walsender: %d\n", am_db_walsender);
The patch seems to include the debug code accidentally.
Except this, the patch looks good to me.
Regards,
--
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION