Project Admin Area slony1 Home | Slony-I Website | Slony-I CVS | Mailing Lists

Drafty Slony-I Site

Please note that this site is presently under heavy construction .

It will soon be able to be actively used for Slony-I CVS, downloads, and mailing lists; it's not quite ready yet, so for now, you likely still want to look to the gBorg Slony-I project for the time being.

There will be announcements on the gBorg-based mailing lists indicating the migration when all is ready...


Slony-I is a "master to multiple slaves" replication system with cascading and failover.

The big picture for the development of Slony-I is a master-slave system that includes all features and capabilities needed to replicate large databases to a reasonably limited number of slave systems.

Slony-I is a system for data centers and backup sites, where the normal mode of operation is that all nodes are available.

A fairly extensive "admin guide" comprising material in the CVS tree may be found here There is also a local copy here

The original design document is available here.

Slony-I 1.2.6

At long last, here is version 1.2.6. It has many enhancements as listed in the Release Notes .

This has been run thru the Release Checklist

There are two tarballs available here

Slony-I and PostgreSQL 8.1

There is a known incompatibility of versions earlier than 1.1.5 with version 8.1; you can expect to see the following error message when compiling:

slony1_funcs.c:1081: error: too many arguments to function

A patch for both version 1.1 "STABLE" and CVS HEAD has been committed to CVS; look at both CVS HEAD as well as REL_1_1_STABLE. It is in the 1.1.5 release candidate described above.

Upgrading Slony-I

Beginning with version 1.0.5 the slon replication engine refuses to work against any database that does not have the stored procedures for the same version loaded or where the shared object containing the C language support functions and the log trigger does not match the version number.

This means that the Slony installation on all nodes in a cluster must be upgraded at once.

The proper upgrade procedure is this:

  1. Stop the slon replication engine on all nodes.
  2. Install the new Slony version on all nodes.
  3. Execute a slonik script containing the command
        update functions (id = );
    for every node in the cluster.
  4. Start all slon replication engines.

    Libpq requirements

    The multithreaded replication engine requires the libpq client library to be compiled with --enable-thread-safety on certain operating systems. Known are thus far Solaris and AIX. Other operating systems are known to not require this (Linux-X86, FreeBSD-X86, FreeBSD-Alpha, OpenBSD-Sparc64 and OSX). The configuration script is broken with respect to the --enable-thread-safety switch for Solaris. Please apply this patch, configure and recompile libpq: threadsafe-libpq-742.diff.gz.


    RPM files for some versions of Red Hat Linux are available here , including SRPM (Source RPM) files that may be helpful if you wish to generate RPM files for distributions not yet supported.

    This project is released under the Berkeley/BSD license.

Christopher Browne
Last modified: Thu Jan 25 12:01:53 EST 2007