mirror of
https://github.com/postgres/postgres.git
synced 2025-06-13 07:41:39 +03:00
Refactor code in charge of grabbing the relations of a subscription
GetSubscriptionRelations() and GetSubscriptionNotReadyRelations() share mostly the same code, which scans pg_subscription_rel and fetches all the relations of a given subscription. The only difference is that the second routine looks for all the relations not in a ready state. This commit refactors the code to use a single routine, shaving a bit of code. Author: Vignesh C Reviewed-By: Kyotaro Horiguchi, Amit Kapila, Michael Paquier, Peter Smith Discussion: https://postgr.es/m/CALDaNm0eW-9g4G_EzHebnFT5zZoasWCS_EzZQ5BgnLZny9S=pg@mail.gmail.com
This commit is contained in:
@ -814,7 +814,7 @@ AlterSubscription_refresh(Subscription *sub, bool copy_data,
|
||||
pubrel_names = fetch_table_list(wrconn, sub->publications);
|
||||
|
||||
/* Get local table list. */
|
||||
subrel_states = GetSubscriptionRelations(sub->oid);
|
||||
subrel_states = GetSubscriptionRelations(sub->oid, false);
|
||||
|
||||
/*
|
||||
* Build qsorted array of local table oids for faster lookup. This can
|
||||
@ -1494,7 +1494,7 @@ DropSubscription(DropSubscriptionStmt *stmt, bool isTopLevel)
|
||||
* the apply and tablesync workers and they can't restart because of
|
||||
* exclusive lock on the subscription.
|
||||
*/
|
||||
rstates = GetSubscriptionNotReadyRelations(subid);
|
||||
rstates = GetSubscriptionRelations(subid, true);
|
||||
foreach(lc, rstates)
|
||||
{
|
||||
SubscriptionRelState *rstate = (SubscriptionRelState *) lfirst(lc);
|
||||
|
Reference in New Issue
Block a user