Thread: [HACKERS] 'nocopy data' option is set in SUBSCRIPTION but still data is gettingmigrated
[HACKERS] 'nocopy data' option is set in SUBSCRIPTION but still data is gettingmigrated
From
tushar
Date:
Hi, Please refer this scenario -where 'nocopy data' option is set in SUBSCRIPTION but still data is getting migrated Publication - (X) create table t(n int); insert into t values (generate_series(1,99)); create publication pub for table t; Subscription (Y) create table t(n int); CREATE SUBSCRIPTION sub CONNECTION 'dbname=postgres host=localhost port=5000 user=centos password=a' PUBLICATION pub WITH (copy data,SYNCHRONOUS_COMMIT=on); select count(*) from t; ->showing 99 rows alter subscription sub refresh publication with (nocopy data); restart the server (Y) X - insert more records into table 't' Y - check the row count , rows have been migrated from X . Is it the right behavior in this case where nocopy data option is set ? -- regards,tushar EnterpriseDB https://www.enterprisedb.com/ The Enterprise PostgreSQL Company
Re: [HACKERS] 'nocopy data' option is set in SUBSCRIPTION but stilldata is getting migrated
From
Petr Jelinek
Date:
On 10/05/17 15:27, tushar wrote: > Hi, > > Please refer this scenario -where 'nocopy data' option is set in > SUBSCRIPTION but still data is getting migrated > > Publication - (X) > create table t(n int); > insert into t values (generate_series(1,99)); > create publication pub for table t; > > Subscription (Y) > create table t(n int); > CREATE SUBSCRIPTION sub CONNECTION 'dbname=postgres host=localhost > port=5000 user=centos password=a' PUBLICATION pub WITH (copy > data,SYNCHRONOUS_COMMIT=on); > select count(*) from t; ->showing 99 rows > alter subscription sub refresh publication with (nocopy data); > restart the server (Y) > > X - insert more records into table 't' > Y - check the row count , rows have been migrated from X . > > Is it the right behavior in this case where nocopy data option is set ? > Yes, (no)copy data only affects existing data at the time of running the command, any additional data are always replicated. The "alter subscription sub refresh publication" does nothing unless you added/removed tables to/from publication. -- Petr Jelinek http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services