Обсуждение: [HACKERS] 'nocopy data' option is set in SUBSCRIPTION but still data is gettingmigrated

Поиск
Список
Период
Сортировка
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

От
Petr Jelinek
Дата:
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