Re: Add support for specifying tables in pg_createsubscriber.

From: Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>
To: Shubham Khanna <khannashubham1197(at)gmail(dot)com>
Cc: Peter Smith <smithpb2250(at)gmail(dot)com>, "Zhijie Hou (Fujitsu)" <houzj(dot)fnst(at)fujitsu(dot)com>, vignesh C <vignesh21(at)gmail(dot)com>, "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Add support for specifying tables in pg_createsubscriber.
Date: 2025-09-25 07:45:26
Message-ID: E6E1F4E3-DABF-4F23-A64A-B7C883F2A9E1@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


> On Sep 25, 2025, at 15:07, Shubham Khanna <khannashubham1197(at)gmail(dot)com> wrote:
>>
>>
>> 1.
>> ```
>> + if (dbinfo->made_publication)
>> + drop_publication(conn, dbinfo->pubname, dbinfo->dbname,
>> + &dbinfo->made_publication);
>> + else
>> + pg_log_info("preserve existing publication \"%s\" in database \"%s\"",
>> + dbinfo->pubname, dbinfo->dbname);
>> + }
>> ```
>>
>> Should we preserve “|| dry_run”? Because based on the old comment, in dry-run mode, even if we don’t create publications, we still want to inform the user.
>>
>
> We don’t need to add an explicit "|| dry_run" here, since the
> made_publication flag already accounts for that case. In dry-run mode,
> no publications are actually created, so made_publication is never
> set. This ensures we still hit the “preserve existing publication …”
> branch and inform the user accordingly.
>

I doubt that. Looking the code in create_publication():
if (!dry_run)
{
res = PQexec(conn, str->data);
if (PQresultStatus(res) != PGRES_COMMAND_OK)
{
pg_log_error("could not create publication \"%s\" in database \"%s\": %s",
dbinfo->pubname, dbinfo->dbname, PQresultErrorMessage(res));
disconnect_database(conn, true);
}
PQclear(res);
}

/* For cleanup purposes */
dbinfo->made_publication = true;

made_publication will always be set regardless of dry_run.

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniel Gustafsson 2025-09-25 07:46:13 Re: Fix incorrect function comment of stringToNodeInternal
Previous Message Daniel Gustafsson 2025-09-25 07:32:40 Re: Remove obsolate comments from 047_checkpoint_physical_slot