STORE NODE (options); \kx


Initialize a new node and add it to the configuration of an existing cluster.

The initialization process consists of creating the cluster namespace in the new node (the database itself must already exist), loading all the base tables, functions, procedures and initializing the node. The existing configuration of the rest of the cluster is copied from the \(oqevent node\(cq.

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

The unique, immutable numeric ID number of the new node.

Note that the ID is immutable because it is used as the basis for inter-node event communications.

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

A descriptive text added to the node entry in the table “sl_node” [not available as a man page]

\*(T<SPOOLNODE = boolean \*(T>

Specifies that the new node is a virtual spool node for file archiving of replication log. If true, slonik will not attempt to initialize a database with the replication schema.


Never use the SPOOLNODE value - no released version of Slony-I has ever behaved in the fashion described in the preceding fashion. Log shipping, as it finally emerged in 1.2.11, does not require initializing \(oqspool nodes\(cq.

\*(T<EVENT NODE = ival \*(T>

The ID of the node used to create the configuration event that tells all existing nodes about the new node. It must be the ID of a pre-existing node in the cluster, not the ID of the new node.

This uses “schemadocinitializelocalnode(p_comment integer, p_local_node_id text)” [not available as a man page] and “schemadocenablenode(p_no_id integer)” [not available as a man page].


\*(T<     STORE NODE ( ID = 2, COMMENT = 'Node 2', EVENT NODE = 1 );


This command creates a new namespace and configures tables therein; no public objects should be locked during the duration of this.


Slonik waits for the command submitted to the previous event node to be confirmed on the specified event node before submitting this command.


This command was introduced in Slony-I 1.0. The SPOOLNODE parameter was introduced in version 1.1, but was vestigial in that version. The described functionality for SPOOLNODE arrived in version 1.2, but SPOOLNODE was not used for this purpose. In later versions, hopefully SPOOLNODE will be unavailable.

In version 2.0, the default value for EVENT NODE was removed, so a node must be specified.