Re: Data is copied twice when specifying both child and parent table in publication
От | Greg Nancarrow |
---|---|
Тема | Re: Data is copied twice when specifying both child and parent table in publication |
Дата | |
Msg-id | CAJcOf-e1dJXCzRMnV1SmSJY9vbo77nPod4K5c31i6SZ4O5AT-w@mail.gmail.com обсуждение исходный текст |
Ответ на | RE: Data is copied twice when specifying both child and parent table in publication ("houzj.fnst@fujitsu.com" <houzj.fnst@fujitsu.com>) |
Ответы |
Re: Data is copied twice when specifying both child and parent table in publication
|
Список | pgsql-hackers |
On Thu, Nov 11, 2021 at 5:52 PM houzj.fnst@fujitsu.com <houzj.fnst@fujitsu.com> wrote: > > When looking into how to fix the second issue, I have a question: > > After changing publish_via_partition_root from false to true, the > subcriber will fetch the partitioned table from publisher when refreshing. > > In subsriber side, If all the child tables of the partitioned table already > subscribed, then we can just skip the table sync for the partitioned table. But > if only some of the child tables(not all child tables) were already subscribed, > should we skip the partitioned table's table sync ? I am not sure about the > appropriate behavior here. > > What do you think ? > I'm not sure you can skip the partitioned table's table sync as you are suggesting, because on the subscriber side, the tables are mapped by name, so what is a partitioned table on the publisher side might not be a partitioned table on the subscriber side (e.g. might be an ordinary table; and similarly for the partitions) or it might be partitioned differently to that on the publisher side. (I might be wrong here, and I don't have a good solution, but I can see the potential for inconsistent data resulting in this case, unless say, the subscriber "child tables" are first truncated on the refresh, if they are in fact partitions of the root, and then the table sync publishes the existing data via the root) Regards, Greg Nancarrow Fujitsu Australia
В списке pgsql-hackers по дате отправления: