RE: Enhance 'pg_createsubscriber' to retrieve databases automatically when no database is provided. - Mailing list pgsql-hackers

From Hayato Kuroda (Fujitsu)
Subject RE: Enhance 'pg_createsubscriber' to retrieve databases automatically when no database is provided.
Date
Msg-id OSCPR01MB149666770DF6AA63307507B29F5CC2@OSCPR01MB14966.jpnprd01.prod.outlook.com
Whole thread Raw
In response to Re: Enhance 'pg_createsubscriber' to retrieve databases automatically when no database is provided.  (Shubham Khanna <khannashubham1197@gmail.com>)
List pgsql-hackers
Dear Shubham,

Thanks for updating the patch.

I think the modification [1] is not correct - the loop is meaningless because the same
query would be executed every time. How about idea like attached? Here, instead of
try escaping dbname, dbname is directly obtained from the instance and they are compared.

How do you think?

[1]:
```
+# Verify that only user databases got subscriptions (not template databases)
+my @user_dbs = ('postgres', $db1, $db2);
+foreach my $dbname (@user_dbs)
+{
+    $result = $node_s2->safe_psql('postgres',
+        "SELECT count(*) FROM pg_subscription, pg_database WHERE subdbid = pg_database.oid and datistemplate = 'f';"
+    );
+    is($result, '3', "Subscription created successfully for $dbname");
+    $result = $node_s2->safe_psql('postgres',
+        "SELECT count(*) FROM pg_subscription, pg_database WHERE subdbid = pg_database.oid and datistemplate = 't';"
+    );
+    is($result, '0', "Subscription created successfully for $dbname");
+}
```

Best regards,
Hayato Kuroda
FUJITSU LIMITED


Attachment

pgsql-hackers by date:

Previous
From: Yura Sokolov
Date:
Subject: Re: Implement waiting for wal lsn replay: reloaded
Next
From: Álvaro Herrera
Date:
Subject: Re: Get rid of WALBufMappingLock