CREATE SET (options); \kx


In the Slony-I replication system, replicated tables are organized in sets. As a general rule of thumb, a set should contain all the tables of one application, that have relationships. In a well designed application, this is equal to all the tables in one schema.

The smallest unit one node can subscribe for replication from another node is a set. A set always has an origin. In classical replication terms, that would be the \(oqmaster.\(cq Since in Slony-I a node can be the \(oqmaster\(cq over one set, while receiving replication data in the \(oqslave\(cq role for another at the same time, this terminology may easily become misleading and should therefore be replaced with \(oqset origin\(cq and \(oqsubscriber\(cq.

\*(T<ID = ival \*(T>

ID of the set to be created.

\*(T<ORIGIN = ival \*(T>

Initial origin node of the set.

\*(T<COMMENT = 'string' \*(T>

A descriptive text added to the set entry.

If none is provided, a default value is set; A replication set so boring no one thought to give it a name.

This uses “schemadocstoreset(p_set_comment integer, p_set_id text)” [not available as a man page] .


\*(T<     CREATE SET ( ID = 1,
               ORIGIN = 1,
               COMMENT = 'Tables for ticketing system' );


No application-visible locking should take place.


Slonik waits for the command submitted to the previous event node to be confirmed on the specified event node before submitting this command. Slonik will also wait until any outstanding DROP SET commands are confirmed by all nodes before it submits the CREATE SET command.


This command was introduced in Slony-I 1.0

Until version 1.2, it would crash if no comment was provided.