Re: Support logical replication of DDLs
От | Japin Li |
---|---|
Тема | Re: Support logical replication of DDLs |
Дата | |
Msg-id | MEYP282MB1669DDF788C623B7F8B64C2EB6139@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM обсуждение исходный текст |
Ответ на | Re: Support logical replication of DDLs (Japin Li <japinli@hotmail.com>) |
Список | pgsql-hackers |
On Fri, 18 Mar 2022 at 08:22, Japin Li <japinli@hotmail.com> wrote: > On Fri, 18 Mar 2022 at 00:22, Zheng Li <zhengli10@gmail.com> wrote: >> Hello Japin, >>>The new patch change the behavior of publication, when we drop a table >>>on publisher, the table also be dropped on subscriber, and this made the >>>regression testa failed, since the regression test will try to drop the >>>table on subscriber. >> >>>IMO, we can disable the DDLs replication by default, which makes the >>>regression test happy. Any thoughts? >> >> Good catch, I forgot to run the whole TAP test suite. I think for now >> we can simply disable DDL replication for the failing tests when >> creating publication: $node_publisher->safe_psql('postgres', >> "CREATE PUBLICATION tap_pub FOR ALL TABLES WITH (ddl='')"); >> I'll fix it in the next version of patch. I'll also work on breaking >> down the patch into smaller pieces for ease of review. >> > > Oh, it doesn't work. > > postgres=# CREATE PUBLICATION s1 FOR ALL TABLES WITH(ddl = '');; > ERROR: conflicting or redundant options > > > Here is the code, I think, you might mean `if (ddl_level_given == NULL)`. > > + if (*ddl_level_given) > + ereport(ERROR, > + (errcode(ERRCODE_SYNTAX_ERROR), > + errmsg("conflicting or redundant options"))); > + > + /* > + * If publish option was given only the explicitly listed actions > + * should be published. > + */ > + pubactions->pubddl_database = false; > + pubactions->pubddl_table = false; > + > + *ddl_level_given = true; Oh, Sorry, I misunderstand it, it just like you forget initialize *ddl_level_given to false when enter parse_publication_options(). -- Regrads, Japin Li. ChengDu WenWu Information Technology Co.,Ltd.
В списке pgsql-hackers по дате отправления: