Christopher Browne cbbrowne
Tue Aug 10 15:58:00 PDT 2004
tohny at netcourrier.com writes:
> I have a problem with Slony1. When i add new data in tables,
> the replication works good but when i add a new table to the
> master database, this table is not replicated on the slave database.
> Is slony-1 deals with table replication ?

You cannot add a table to a set that is already being subscribed to.

As per the sources to
  setAddTable ()

        if exists (select true from schemadoc.sl_subscribe
			where sub_set = p_set_id)
	then
		raise exception 'Slony-I: cannot add table to currently subscribed set %',
				p_set_id;
	end if;

In order to add some new tables to replication, what you need to do is
to create _another_ replication set, let's say, set id = 2, add the
new tables to that replication set, and have the desired subscribers
subscribe to this new set.

Once they are all subscribed, you can request a MERGE SET event
(whether via slonik or via the function call mergeSet(int,int)) to
merge the new set into the old one.

Per the documentation...
=======================================================================
Function: mergeset( integer, integer )
Returns: bigint
Language: PLPGSQL

Generate MERGE_SET event to request that sets be merged together. Both
sets must exist, and originate on the same node. They must be
subscribed by the same set of nodes.
=======================================================================
-- 
"cbbrowne","@","ca.afilias.info"
<http://dev6.int.libertyrms.com/>
Christopher Browne
(416) 673-4124 (land)


More information about the Slony1-general mailing list