On 24/03/17 15:05, Peter Eisentraut wrote: > On 3/23/17 19:32, Petr Jelinek wrote: >> Yes, I also forgot to check if the table actually exists on subscriber >> when fetching them in CREATE SUBSCRIPTION (we have check during >> replication but not there). > > I think for this we can probably just change the missing_ok argument of > RangeVarGetRelid() to false. > > Unless we want the custom error message, in which case we need to change > AlterSubscription_refresh(), because right now it errors out because > missing_ok = false. >
You are right, stupid me. -- Petr Jelinek http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
>From 81c7750095cfac35fad9a841309b2c5501e59a62 Mon Sep 17 00:00:00 2001 From: Petr Jelinek <pjmo...@pjmodos.net> Date: Fri, 24 Mar 2017 00:24:47 +0100 Subject: [PATCH 2/2] Check that published table exists on subscriber --- src/backend/commands/subscriptioncmds.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/commands/subscriptioncmds.c b/src/backend/commands/subscriptioncmds.c index 8f201b2..efe70b4 100644 --- a/src/backend/commands/subscriptioncmds.c +++ b/src/backend/commands/subscriptioncmds.c @@ -416,7 +416,7 @@ CreateSubscription(CreateSubscriptionStmt *stmt, bool isTopLevel) RangeVar *rv = (RangeVar *) lfirst(lc); Oid relid; - relid = RangeVarGetRelid(rv, AccessShareLock, true); + relid = RangeVarGetRelid(rv, AccessShareLock, false); SetSubscriptionRelState(subid, relid, table_state, InvalidXLogRecPtr); -- 2.7.4
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers