Search Postgresql Archives

Re: BDR truncate and replication sets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sylvain MARECHAL wrote:
> Hello all,
> 
> To avoid replication of some tables, I use a specific replication set.
> For example, with 2 nodes 'node1' and 'node2' and a table 'test' which
> content shall not be replicated, I do the following:
> 
> mydb=# CREATE TABLE test (i INT PRIMARY KEY NOT NULL);
> mydb=# SELECT bdr.table_set_replication_sets('test', ARRAY['test_rep_set']);
> 
> After that, adding (INSERT) or removing (DELETE) data in 'node1' or 'node2'
> can be done independently.
> The exception is with TRUNCATE: In case it is called, data is removed on
> both nodes.
> 
> Is it a feature or a bug?

I think it's an oversight.  Replication sets were added later than the
TRUNCATE trigger, so the design for the latter does not consider the
former as far as I know.

> (I am not sure it is related with
> https://github.com/2ndQuadrant/bdr/issues/93)

Doesn't look related.

> Is there a workaround?
> (deleting the truncate trigger seems to work, but I am sure it is safe to do
> it)

Well, the truncate trigger is there to replicate the truncate to other
servers.  If you don't want truncate to be propagated, dropping the
trigger is one way to achieve that effect.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux