On Tue, Jun 13, 2017 at 4:53 PM, Petr Jelinek <petr.jeli...@2ndquadrant.com> wrote: > On 13/06/17 09:06, Masahiko Sawada wrote: >> Hi, >> >> The commit ddd7b22b225ae41d16ceb218b387645cb9becfdc makes table sync >> workers stop when subscription relation entry is removed. It doesn't >> work fine inside transaction block. I think we should disallow to use >> the following subscription DDLs inside a transaction block. Attached >> patch. >> > > Can you be more specific than "It doesn't work fine inside transaction > block", what do you expect to happen and what actually happens? >
If we do ALTER SUBSCRIPTION SET PUBLICATION during executing table sync then it forcibly stops concurrently running table sync worker for a table that had been removed from pg_subscription_rel. Then if we rollback the transaction then these table sync worker start again from the first. it's an rarely situation and not a damaging behavior but what I expected is the table sync worker is stopped when the refreshing transaction is committed. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers