[Trad] [svn:pgfr] r1378 - in traduc/trunk/slony/website: . content content/CVS downloads downloads/CVS
admin at listes.postgresql.fr
admin at listes.postgresql.fr
Dim 30 Aou 13:52:17 CEST 2009
Author: daamien
Date: 2009-08-30 13:52:16 +0200 (Sun, 30 Aug 2009)
New Revision: 1378
Added:
traduc/trunk/slony/website/content/
traduc/trunk/slony/website/content/404.txt
traduc/trunk/slony/website/content/CVS/
traduc/trunk/slony/website/content/CVS/Entries
traduc/trunk/slony/website/content/CVS/Repository
traduc/trunk/slony/website/content/CVS/Root
traduc/trunk/slony/website/content/admin.txt
traduc/trunk/slony/website/content/cvs.txt
traduc/trunk/slony/website/content/frontpage.txt
traduc/trunk/slony/website/content/intro.txt
traduc/trunk/slony/website/content/news.txt
traduc/trunk/slony/website/downloads/
traduc/trunk/slony/website/downloads/CVS/
traduc/trunk/slony/website/downloads/CVS/Entries
traduc/trunk/slony/website/downloads/CVS/Repository
traduc/trunk/slony/website/downloads/CVS/Root
traduc/trunk/slony/website/index.php
traduc/trunk/slony/website/layout.php
traduc/trunk/slony/website/style.css
traduc/trunk/slony/website/test.html
Modified:
traduc/trunk/slony/website/admin.html
traduc/trunk/slony/website/cvs.html
traduc/trunk/slony/website/index.html
Log:
Site web
Modified: traduc/trunk/slony/website/admin.html
===================================================================
--- traduc/trunk/slony/website/admin.html 2009-08-23 15:43:43 UTC (rev 1377)
+++ traduc/trunk/slony/website/admin.html 2009-08-30 11:52:16 UTC (rev 1378)
@@ -83,17 +83,188 @@
</tbody>
</table>
- <h1><font face="lucida,arial,helvetica" size="2">Project
- Admin Area</font></h1>Heh. Doesn't exist yet...
+ <h1>Project Admin Area</h1>
+
+ <p>Heh. Doesn't much exist yet...</p>
+
+ <h1>Web Site and CVS</h1>
+
+ <p>The Slony-I web site physically resides at path
+ <tt>/home/community/slony/htdocs</tt> , and is an
+ anonymous checkout of the <tt>slony1-www</tt> <a href=
+ "cvs.html">CVS repository.</a></p>
+
+ <p>As a result, if you make changes directly, you'll want
+ to do a <tt>cvs diff</tt> to extract those changes, and
+ apply them to some not-so-anonymous copy of CVS that you
+ have access to. Then please commit such changes to CVS
+ and see about doing a <tt>cvs update</tt> in the
+ <tt>htdocs</tt> directory to deploy those changes "to
+ production."</p>
<hr>
+ <h1>Backups</h1>
+
+ <p>Both <tt>rsync</tt> and <tt>unison</tt> are installed;
+ either may be used to backup important parts of the web
+ site.</p>
+
+ <p>Here are the contents of a set of Unison <tt>.prf</tt>
+ files suitable for backing up CVS, mailing lists, and the
+ local web site contents.</p>
+
+ <ol>
+ <li>Unison configuration - <tt>cmdcvs.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/cvsbackup
+root = ssh://cvs.slony.info//home/cvsd/slony1
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-admin.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/admin
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-admin
+
+</pre>
+ </li>
+
+ <li>Unison configuration - <tt>cmdmailman-bugs.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/bugs
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-bugs
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-commit.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/commit
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-commit
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-general.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/general
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-general
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-hackers.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/hackers
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-hackers
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-patches.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/patches
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-patches
+
+</pre>
+ </li>
+
+ <li>Unison configuration - <tt>cmdweb.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/webbackup
+root = ssh://cvs.slony.info//home/community/slony
+</pre>
+ </li>
+ </ol>
+
+ <h2>Usage</h2>
+
+ <p>If you are using Unison, you might write the above
+ files into your local <tt>${HOME}/.unison</tt> directory,
+ and then use them as follows:</p>
+ <pre>
+cd ${HOME}.unison
+for target in `ls cmd*prf | cut -d "." -f 1`; do
+ unison ${target}
+done
+</pre>
+
+ <p>By default, this will request user intervention to
+ indicate the direction in which to propagate updates; if
+ you know what you're doing, you can tell
+ <tt>unison</tt>to "just do it."</p>
+
+ <h2>Other Environmental Stuff</h2>
+
+ <p>Those with login access, please add the entry:</p>
+ <pre>
+umask 0002
+</pre>
+
+ <p>to your <tt>.profile</tt> / <tt>.bashrc</tt> file.
+ That way, <i>group write</i> is permitted, by default.
+ It's very annoying, particularly in the web site area, if
+ one person checks out CVS with <tt>umask 0022</tt>,
+ thereby forbidding anyone else from updating any files
+ that they newly add.</p>
+
+ <h1>Editing the Web Site</h1>
+
+ <p>Niels Breet has set things up where there is a pair of
+ central PHP scripts, <tt>index.php</tt>, and
+ <tt>layout.php</tt>, which control rendering of the site.
+ By doing things this way, each page on the site can have a
+ common layout complete with common
+ header/footer/graphics.</p>
+
+ <p>Web site <i>content</i> resides in the
+ <tt>content</tt> directory as a set of <tt>.txt</tt>
+ files.</p>
+
+ <p>These pages consist of some lightly formatted
+ material:</p>
+
+ <ul>
+ <li>There is a "title" on the first line;</li>
+
+ <li>There is a URL for that title on the second line;
+ </li>
+
+ <li>Following that is a set of HTML text that
+ will be rendered as the body of the web page</li>
+ </ul>
+
+ <p>There are also some pages that consist of
+ lightly-formatted news material, such as
+ <tt>news.txt</tt>. This file consists of a set of news
+ items, formatted thus:</p>
+
+ <ul>
+ <li>A line consisting of "---"</li>
+
+ <li>A title for the item</li>
+
+ <li>A URL for that title to point at (<i>e.g.</i> - if
+ you click on the title, you head to the URL)</li>
+
+ <li>A possibly-multi-line chunk of HTML to describe the
+ piece of news.</li>
+
+ <li>A line consisting of "---"</li>
+ </ul>
+
<address>
<a href="mailto:cbbrowne at ca.afilias.info">Christopher
Browne</a>
</address><!-- Created: Thu Jan 25 11:38:58 EST 2007 -->
<!-- hhmts start -->
- Last modified: Thu Jan 25 11:46:42 EST 2007
- <!-- hhmts end -->
+Last modified: Wed Jan 31 12:42:48 EST 2007
+<!-- hhmts end -->
</td>
</tr>
</tbody>
Added: traduc/trunk/slony/website/content/404.txt
===================================================================
--- traduc/trunk/slony/website/content/404.txt (rev 0)
+++ traduc/trunk/slony/website/content/404.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+Oops. 404? Hmm something must be wrong....
Added: traduc/trunk/slony/website/content/CVS/Entries
===================================================================
--- traduc/trunk/slony/website/content/CVS/Entries (rev 0)
+++ traduc/trunk/slony/website/content/CVS/Entries 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,7 @@
+/404.txt/1.1/Tue Jan 30 16:06:42 2007//
+/admin.txt/1.1/Thu Feb 1 17:19:08 2007//
+/cvs.txt/1.5/Fri Mar 2 15:47:25 2007//
+/frontpage.txt/1.35/Fri Jun 5 17:54:47 2009//
+/intro.txt/1.4/Wed Feb 28 21:34:01 2007//
+/news.txt/1.60/Wed Aug 12 22:30:38 2009//
+D
Added: traduc/trunk/slony/website/content/CVS/Repository
===================================================================
--- traduc/trunk/slony/website/content/CVS/Repository (rev 0)
+++ traduc/trunk/slony/website/content/CVS/Repository 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+slony1-www/content
Added: traduc/trunk/slony/website/content/CVS/Root
===================================================================
--- traduc/trunk/slony/website/content/CVS/Root (rev 0)
+++ traduc/trunk/slony/website/content/CVS/Root 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+:pserver:anonymous at main.slony.info:/slony1
Added: traduc/trunk/slony/website/content/admin.txt
===================================================================
--- traduc/trunk/slony/website/content/admin.txt (rev 0)
+++ traduc/trunk/slony/website/content/admin.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,172 @@
+Slony-I Admin Area
+#
+ <h1>Web Site and CVS</h1>
+
+ <p>The Slony-I web site physically resides at path
+ <tt>/home/community/slony/htdocs</tt> , and is an
+ anonymous checkout of the <tt>slony1-www</tt> <a href=
+ "cvs.html">CVS repository.</a></p>
+
+ <p>As a result, if you make changes directly, you'll want
+ to do a <tt>cvs diff</tt> to extract those changes, and
+ apply them to some not-so-anonymous copy of CVS that you
+ have access to. Then please commit such changes to CVS
+ and see about doing a <tt>cvs update</tt> in the
+ <tt>htdocs</tt> directory to deploy those changes "to
+ production."</p>
+ <hr>
+
+ <h1>Backups</h1>
+
+ <p>Both <tt>rsync</tt> and <tt>unison</tt> are installed;
+ either may be used to backup important parts of the web
+ site.</p>
+
+ <p>Here are the contents of a set of Unison <tt>.prf</tt>
+ files suitable for backing up CVS, mailing lists, and the
+ local web site contents.</p>
+
+ <ol>
+ <li>Unison configuration - <tt>cmdcvs.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/cvsbackup
+root = ssh://cvs.slony.info//home/cvsd/slony1
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-admin.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/admin
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-admin
+
+</pre>
+ </li>
+
+ <li>Unison configuration - <tt>cmdmailman-bugs.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/bugs
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-bugs
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-commit.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/commit
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-commit
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-general.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/general
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-general
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-hackers.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/hackers
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-hackers
+
+</pre>
+ </li>
+
+ <li>Unison configuration -
+ <tt>cmdmailman-patches.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/mailman-backup/patches
+root = ssh://cvs.slony.info//var/lib/mailman/archives/private/slony-patches
+
+</pre>
+ </li>
+
+ <li>Unison configuration - <tt>cmdweb.prf</tt>
+ <pre>
+root = /home/cbbrowne/Slony-I/CMD/webbackup
+root = ssh://cvs.slony.info//home/community/slony
+</pre>
+ </li>
+ </ol>
+
+ <h2>Usage</h2>
+
+ <p>If you are using Unison, you might write the above
+ files into your local <tt>${HOME}/.unison</tt> directory,
+ and then use them as follows:</p>
+ <pre>
+cd ${HOME}.unison
+for target in `ls cmd*prf | cut -d "." -f 1`; do
+ unison ${target}
+done
+</pre>
+
+ <p>By default, this will request user intervention to
+ indicate the direction in which to propagate updates; if
+ you know what you're doing, you can tell
+ <tt>unison</tt>to "just do it."</p>
+
+ <h2>Other Environmental Stuff</h2>
+
+ <p>Those with login access, please add the entry:</p>
+ <pre>
+umask 0002
+</pre>
+
+ <p>to your <tt>.profile</tt> / <tt>.bashrc</tt> file.
+ That way, <i>group write</i> is permitted, by default.
+ It's very annoying, particularly in the web site area, if
+ one person checks out CVS with <tt>umask 0022</tt>,
+ thereby forbidding anyone else from updating any files
+ that they newly add.</p>
+
+ <h1>Editing the Web Site</h1>
+
+ <p>Niels Breet has set things up where there is a pair of
+ central PHP scripts, <tt>index.php</tt>, and
+ <tt>layout.php</tt>, which control rendering of the site.
+ By doing things this way, each page on the site can have a
+ common layout complete with common
+ header/footer/graphics.</p>
+
+ <p>Web site <i>content</i> resides in the
+ <tt>content</tt> directory as a set of <tt>.txt</tt>
+ files.</p>
+
+ <p>These pages consist of some lightly formatted
+ material:</p>
+
+ <ul>
+ <li>There is a "title" on the first line;</li>
+
+ <li>There is a URL for that title on the second line;
+ </li>
+
+ <li>Following that is a set of HTML text that
+ will be rendered as the body of the web page</li>
+ </ul>
+
+ <p>There are also some pages that consist of
+ lightly-formatted news material, such as
+ <tt>news.txt</tt>. This file consists of a set of news
+ items, formatted thus:</p>
+
+ <ul>
+ <li>A line consisting of "---"</li>
+
+ <li>A title for the item</li>
+
+ <li>A URL for that title to point at (<i>e.g.</i> - if
+ you click on the title, you head to the URL)</li>
+
+ <li>A possibly-multi-line chunk of HTML to describe the
+ piece of news.</li>
+
+ <li>A line consisting of "---"</li>
+ </ul>
Added: traduc/trunk/slony/website/content/cvs.txt
===================================================================
--- traduc/trunk/slony/website/content/cvs.txt (rev 0)
+++ traduc/trunk/slony/website/content/cvs.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,33 @@
+Slony-I cvs
+#
+ <h1>Anonymous CVS Access</h1>
+
+ <p>You may access Slony-I sources via anonymous CVS using
+ the following command:</p>
+<pre>
+CVSROOT=":pserver:anonymous at main.slony.info:/slony1" cvs login
+</pre>
+(when it prompts for a password, you may press [enter])
+<pre>
+CVSROOT=":pserver:anonymous at main.slony.info:/slony1" cvs co slony1-engine
+</pre>
+
+ <h1>Developer CVS Access</h1>
+
+ <p>If you are one of the developers, and have had your
+ ssh key added in on a suitable account, you can access as
+ a specific user with update privileges:</p>
+<pre>
+MYSLONYNAME=cbbrowne CVS_RSH=ssh CVSROOT=":ext:${MYSLONYNAME}@main.slony.info:/home/cvsd/slony1" cvs co slony1-engine
+</pre>
+
+ <h1>Modules Available</h1>
+
+ <ul>
+ <li><a href="http://main.slony.info/viewcvs/viewvc.cgi/slony1-engine/"> slony1-engine</a> - the replication engine
+ project</li>
+
+ <li><a href="http://main.slony.info/viewcvs/viewvc.cgi/slony1-www/">slony1-www</a> - web site material for
+ main.slony.info</li>
+
+ </ul>
Added: traduc/trunk/slony/website/content/frontpage.txt
===================================================================
--- traduc/trunk/slony/website/content/frontpage.txt (rev 0)
+++ traduc/trunk/slony/website/content/frontpage.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,164 @@
+---
+Slony-I 2.0.2 Released
+
+<P> See the "news" area for more details, including a copy of the
+release notes. This version fixes quite a number of issues found in
+early use of version 2.0.
+
+<P> See the "news" area for more details, including a copy of the
+release notes. This version fixes issues relating to FAILOVER.
+
+<P> Source RPMs (SRPMs) are available <a href=
+"http://yum.pgsqlrpms.org/srpms/8.4/fedora/fedora-11-i386/slony1-2.0.2-1.f11.src.rpm">
+here </a> --- Slony-I 1.2.16 Released
+---
+Slony-I 2.0.1 Released
+
+<P> See the "news" area for more details, including a copy of the
+release notes. This version fixes quite a number of issues found in
+early use of version 2.0.0.
+---
+Slony-I 2.0.0 Released
+
+<P> See the "news" area for more details, including a copy of the release
+notes.
+
+<P> This is a <i>major</i> new release of Slony-I; it makes use of
+some features introduced in PostgreSQL 8.3, and hence is not
+compatible with versions older than 8.3.
+
+<P> This is considered a pretty good tradeoff, as various
+functionality would not be possible with earlier versions of
+PostgreSQL.
+<ul>
+<li> Internal catalogues are no longer "hacked with," so that you may, with the new version, use pg_dump against subscribers and be able to expect to have a complete and consistent dump.
+<li> Trigger handling is <i>enormously</i> cleaner.
+</ul>
+
+<P> Unfortunately, it needs to be noted that there is not, as of yet,
+an upgrade procedure to upgrade an installation of Slony-I 1.2.x to
+2.0. At present, upgrading to 2.0 will essentially require dropping
+out replication and recreating it.
+
+<P> We hope to have an answer as to how to deal with this in the new year.
+
+<P> Follow <a href=
+"http://www.slony.info/bugzilla/show_bug.cgi?id=69"> Bug #69 </a> for
+more details on this.
+---
+Slony-I 1.2.15 available
+
+<P> Version 1.2.15 is now <a
+href="http://slony.info/downloads/1.2/source/slony1-1.2.15.tar.bz2">
+available.</a>
+
+See the "news" area for more details, including a copy of the release
+notes.
+---
+Checking Cluster State
+
+<p> People frequently ask for assistance in figuring out what might be
+wrong with their cluster. The <em>first thing</em> that you should do
+if you think there <em>might</em> be a problem (or even if you don't)
+is to run the <a href=
+"http://slony.info/documentation/monitoring.html#TESTSLONYSTATE"> test
+state </a> scripts. That may help point you to where the problem is;
+it may also help point other would-be helpers to where the problem is.
+
+<p> If you're not running these scripts hourly against your
+cluster(s), you really should be...
+
+---
+Slony-I 2.0.0 first release available
+
+<P> Version 2.0.0 RC1 is now <a href=
+"http://slony.info/downloads/2.0/source/slony1-2.0.0-rc1.tar.bz2">
+available.</a>
+
+See the "news" area for more details, including a copy of the release
+notes.
+---
+Slony-I 1.2.14 available
+
+<P> Version 1.2.14 is now <a
+href="http://slony.info/downloads/1.2/source/slony1-1.2.14.tar.bz2">
+available.</a>
+
+See the "news" area for more details, including a copy of the release
+notes.
+---
+Slony-I and PostgreSQL 8.1
+#
+ <p>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:</p>
+ <em>
+slony1_funcs.c:1081: error: too many arguments to function
+`Async_Unlisten'
+</em>
+
+ <p>A patch for both version 1.1 "STABLE" and CVS HEAD has
+ been committed to CVS; look at both CVS HEAD as well as
+ <tt>REL_1_1_STABLE</tt>. It is in the 1.1.5 release
+ candidate described above.</p>
+---
+Upgrading Slony-I
+#
+ <p>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.</p>
+
+ <p>This means that the Slony installation on all nodes in
+ a cluster must be upgraded at once.</p>
+
+ <p>The proper upgrade procedure is this:</p>
+
+ <ol>
+ <li>Stop the slon replication engine on all nodes.</li>
+
+ <li>Install the new Slony version on all nodes.</li>
+
+ <li>Execute a slonik script containing the command
+ <pre>
+
+ update functions (id = );
+</pre>for every node in the cluster.
+ </li>
+
+ <li>Start all slon replication engines.</li>
+ </ol>
+
+ <p>For more details, see also <a href=
+ "./adminguide/slony1-1.2.6/doc/adminguide/slonyupgrade.html">
+ Upgrading Slony-I</a> .</p>
+
+---
+Libpq requirements
+#
+ <p>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: <a href=
+ "http://developer.postgresql.org/%7Ewieck/slony1/download/threadsafe-libpq-742.diff.gz">
+ threadsafe-libpq-742.diff.gz.</a></p>
+
+---
+RPMs
+http://pgfoundry.org/projects/slony1
+ <p>RPM files for some versions of Red Hat Linux are
+ available <a href=
+ "http://pgfoundry.org/projects/slony1">here</a> ,
+ including SRPM (Source RPM) files that may be helpful if
+ you wish to generate RPM files for distributions not yet
+ supported.</p>
+
+ <p>This project is released under the Berkeley/BSD
+ license.</p>
Added: traduc/trunk/slony/website/content/intro.txt
===================================================================
--- traduc/trunk/slony/website/content/intro.txt (rev 0)
+++ traduc/trunk/slony/website/content/intro.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,23 @@
+Slony-I - introduction
+#
+ <p><b>Slony-I</b> is a "master to multiple slaves"
+ replication system supporting cascading (<em>e.g.</em> - a node can feed another node which feeds another node...) and failover.</p>
+
+ <p>The <i>big picture</i> for the development of Slony-I is
+ that it is a master-slave replication system that includes
+ all features and capabilities needed to replicate large
+ databases to a reasonably limited number of slave
+ systems.</p>
+
+ <p>Slony-I is a system designed for use at data centers and
+ backup sites, where the normal mode of operation is that all
+ nodes are available.</p>
+
+ <p>A fairly extensive "admin guide" comprising material in
+ the CVS tree may be found <a href=
+ "http://linuxdatabases.info/info/slony.html">here</a>. There
+ is also a <a href="/documentation/">local copy</a>.</p>
+
+ <p>The original design document is available <a href=
+ "http://developer.postgresql.org/%7Ewieck/slony1/Slony-I-concept.pdf">
+ here</a>.</p>
Added: traduc/trunk/slony/website/content/news.txt
===================================================================
--- traduc/trunk/slony/website/content/news.txt (rev 0)
+++ traduc/trunk/slony/website/content/news.txt 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,1373 @@
+---
+Slony-I Quick downloads
+http://main.slony.info/downloads
+2008-09-12
+Chris Browne
+
+Slony-1 2.0.2 <a href="http://main.slony.info/downloads/2.0/source/slony1-2.0.2.tar.bz2">engine</a>
+<a href="http://main.slony.info/downloads/2.0/source/slony1-2.0.2-docs.tar.bz2">documentation</a>
+<br/>
+Slony-1 1.2.16 <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.16.tar.bz2">engine</a>
+<a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.16-docs.tar.bz2">documentation</a>
+<br/>
+Slony-1 1.1.9 <a href="http://main.slony.info/downloads/1.1/source/slony1-1.1.9.tar.bz2">engine</a>
+<!-- Please keep this item at the top of the news list -->
+
+---
+Slony-I 2.0.3RC2 release candidate available
+http://main.slony.info/downloads/2.0/source/slony1-2.0.3-rc2.tar.bz2
+2009-08-12
+Chris Browne
+
+Version <a href=
+"http://main.slony.info/downloads/2.0/source/slony1-2.0.3-rc2.tar.bz2">
+slony1-2.0.3-rc2.tar.bz2 </a> has been made available.
+
+This fixes a number of things since the previous RC:
+
+<ul>
+<li> Doc fixes
+<li> Fixes to integer castings - don't assume this is automagically handled
+<li> Changed return types of functions returning event numbers <tt>bigint</tt>
+<li> Fixes to altperl samples and such
+</ul>
+---
+Slony-I 1.2.17RC release candidate available
+http://main.slony.info/downloads/1.2/source/slony1-1.2.17-rc.tar.bz2
+2009-07-29
+Chris Browne
+
+Version <a href=
+"http://main.slony.info/downloads/1.2/source/slony1-1.2.17-rc.tar.bz2">
+slony1-1.2.17-rc.tar.bz2 </a> has been made available.
+
+<P>Changes since 1.2.16 are as follows:
+<ul>
+
+<li> Apply changes to logshipper that went into the 2.0 branch but not
+ 1.2
+
+<li> Change minimum debugging level to -1 to allow suppressing logging
+
+<li> Bug #92 - compression of event numbers had a bug where events >
+ 2^31-1 would overflow the "int" value
+
+<li> Fix to race condition where file descriptor copies were being made at
+ the wrong time in the scheduler
+
+<li> Establish compatibility with PostgreSQL 8.4:
+
+<ul>
+ <li> autovac data is on pg_class rather than pg_autovacuum
+
+ <li> Need to use GetActiveSnapshot() rather than expecting to have
+ SerializableSnapshot in the backend
+
+ <li> createdb needs to copy from template0 to ensure it can match locales
+
+ <li> pg_class.reltriggers no longer exists in 8.4 and thus shouldn't be
+ touched
+
+</ul>
+</ul>
+---
+Slony-I 2.0.3RC release candidate available
+http://main.slony.info/downloads/2.0/source/slony1-2.0.3-rc.tar.bz2
+2009-07-29
+Chris Browne
+
+Version <a href=
+"http://main.slony.info/downloads/2.0/source/slony1-2.0.3-rc.tar.bz2">
+slony1-2.0.3-rc.tar.bz2 </a> has been made available.
+
+<P>Changes since 2.0.2 are as follows:
+
+<ul>
+<li>PostgreSQL 8.4 has been released; slonik needs to explicitly recognize it
+
+<li>Add in slonikconfdump.sh tool, which generates a slonik script to duplicate
+ the configuration of a Slony-I cluster
+
+<li>Significant fixes to documentation to reflect 2.0 changes
+
+<li>Add "OMIT COPY" option to the Slonik "SUBSCRIBE SET" command
+
+<li>Document process for Slony-I 2.0 upgrade using OMIT COPY option
+
+<li>Fix to race condition where file descriptor copies were being made at
+ the wrong time in the scheduler
+
+<li>Modify "testseqnames" regression test to create a whole bunch of
+ sequences to validate that things don't break down with either lots of
+ them, or where IDs are large numbers
+
+<li>Change minimum debugging level to -1 to allow suppressing logging
+
+<li>Bug #92 - compression of event numbers had a bug where events >
+ 2^31-1 would overflow the "int" value
+
+<li>Autovacuum handling changes in PostgreSQL 8.4 - we pull metadata
+ from pg_class.reloptions, instead of pg_autovacuum
+
+<li>logswitch fix resolving a potential data loss + statement blocking
+ bug...
+
+ Before attempting to TRUNCATE the sl_log_* tables, we need to
+ successfully request an exclusive lock. By doing so in an
+ exception block with NOWAIT option, this can "lose" gracefully.
+
+<li>Add LOG_NAME_SUFFIX to altperl tools
+</ul>
+---
+Updated Online Docs to 2.0.2
+http://www.slony.info/documentation
+2009-07-14
+Chris Browne
+
+Updated the online documentation to reflect version 2.0.2; there have
+been material changes to the docs since 2.0.1.
+---
+Slony-I 2.0.2 candidate released
+http://main.slony.info/downloads/2.0/source/slony1-2.0.2.tar.bz2
+2009-05-08
+Chris Browne
+
+Version <a href=
+"http://main.slony.info/downloads/2.0/source/slony1-2.0.2.tar.bz2">
+slony1-2.0.2.tar.bz2 </a> has been released.
+
+<p>Changes since 2.0.1 are as follows:
+
+<ul>
+<li> PostgreSQL 8.4 compatibility - src/backend/slony1_funcs.c needed to
+ #include "catalog/pg_type.h"; that is no longer implicitly included by
+ the SPI #include
+
+<li> Fix bug #71 - config dump was failing on string entries that were NULL
+
+<li> Fix bug #76 - REPAIR CONFIG could have collisions where, when we
+ load a schema, one entry in sl_table already has an OID value
+ that incorrectly matches a value that another update is trying to
+ fix.
+
+<P> This would cause REPAIR CONFIG to fail.
+
+<P> Put in a query that updates the oids in sl_table and sl_sequence to
+ randomly selected values from pg_class that couldn't match (since
+ the values selected are from non-table/non-sequence objects)
+
+<li> Updated release notes to indicate that 2.0 only supports PostgreSQL
+ 8.3+
+
+<li> Change to configure.ac to allow it to run on autoconf 2.63; there was
+ something unsuitable about SLONREL_VERSION processing
+
+<li> Fixes to Makefile for admin guide
+
+<li> Various fixes to admin guide material
+
+<li> Added an extra test to Schema name test that validates that things
+ can operate properly even if the DB lacks a "public" schema
+
+<li> Fixed bug in tools/start_slon.sh
+
+<li> Fixed pathname substitutions in a couple of altperl scripts
+
+<li> Add a test which validates that the cluster schema name is valid;
+ pgAdminIII allowed setting up cluster names that slonik would refuse
+ to connect to.
+
+<li> Revised regression tests to use SYNC/WAIT FOR EVENT instead of
+ queries that try to coordinate sl_status information with rather
+ less determinacy...
+
+</ul>
+---
+Slony-I 1.2.16 released
+http://main.slony.info/downloads/1.2/source/slony1-1.2.16.tar.bz2
+2009-05-08
+Chris Browne
+
+Version <a href=
+"http://main.slony.info/downloads/1.2/source/slony1-1.2.16.tar.bz2">
+slony1-1.2.16.tar.bz2 </a> has been released.
+
+Changes since 1.2.15:
+<ul>
+<li> Fix problems with failover:
+<ul>
+<li> Failover would fail (ERROR) where there is no path to backup node - change this to a WARNING so that failover can complete; admin will need to fix up paths later </li>
+<li> Failover apparently never supported failing over to nodes that were not directly subscribing to the failed node
+Fixed some broken logic in failedNode()
+<li> Fixed a problem where slonik cannot perform a failover if multiple origins
+fail at once.
+</ul></li>
+<li> Fixed autoconf 2.63 incompatibility </li>
+<li> Draw in latest documentation updates from 2.0 branch </li>
+</ul>
+---
+Slony-I 2.0.2 release candidate released
+http://main.slony.info/downloads/2.0/source/slony1-2.0.2-rc.tar.bz2
+2009-04-30
+Chris Browne
+
+The release candidate <a href=
+"http://main.slony.info/downloads/2.0/source/slony1-2.0.2-rc.tar.bz2">
+slony1-2.0.2-rc.tar.bz2 </a> has been generated.
+
+<ul>
+<li> PostgreSQL 8.4 compatibility - src/backend/slony1_funcs.c needed to
+ #include "catalog/pg_type.h"; that is no longer implicitly included by
+ the SPI #include
+
+<li> Fix bug #71 - config dump was failing on string entries that were NULL
+
+<li> Fix bug #76 - REPAIR CONFIG could have collisions where, when we
+ load a schema, one entry in sl_table already has an OID value
+ that incorrectly matches a value that another update is trying to
+ fix.
+
+<P> This would cause REPAIR CONFIG to fail.
+
+<P> Put in a query that updates the oids in sl_table and sl_sequence to
+ randomly selected values from pg_class that couldn't match (since
+ the values selected are from non-table/non-sequence objects)
+
+<li> Updated release notes to indicate that 2.0 only supports PostgreSQL
+ 8.3+
+
+<li> Change to configure.ac to allow it to run on autoconf 2.63; there was
+ something unsuitable about SLONREL_VERSION processing
+
+<li> Fixes to Makefile for admin guide
+
+<li> Various fixes to admin guide material
+
+<li> Added an extra test to Schema name test that validates that things
+ can operate properly even if the DB lacks a "public" schema
+
+<li> Fixed bug in tools/start_slon.sh
+
+<li> Fixed pathname substitutions in a couple of altperl scripts
+
+<li> Add a test which validates that the cluster schema name is valid;
+ pgAdminIII allowed setting up cluster names that slonik would refuse
+ to connect to.
+
+<li> Revised regression tests to use SYNC/WAIT FOR EVENT instead of
+ queries that try to coordinate sl_status information with rather
+ less determinacy...
+
+</ul>
+---
+Slony-I 1.2.16 release candidate released
+http://main.slony.info/downloads/1.2/source/slony1-1.2.16-rc.tar.bz2
+2009-04-30
+Chris Browne
+
+The release candidate <a href=
+"http://main.slony.info/downloads/1.2/source/slony1-1.2.16-rc.tar.bz2">
+slony1-1.2.16-rc.tar.bz2 </a> has been generated.
+
+Changes:
+<ul>
+<li> Fix problems with failover:
+<ul>
+<li> Failover would fail (ERROR) where there is no path to backup node - change this to a WARNING so that failover can complete; admin will need to fix up paths later </li>
+<li> Failover apparently never supported failing over to nodes that were not directly subscribing to the failed node
+Fixed some broken logic in failedNode()
+<li> Fixed a problem where slonik cannot perform a failover if multiple origins
+fail at once.
+</ul></li>
+<li> Fixed autoconf 2.63 incompatibility </li>
+<li> Draw in latest documentation updates from 2.0 branch </li>
+</ul>
+---
+Slony-I Control Tools Released
+http://slony1-ctl.projects.postgresql.org/
+2009-04-13
+Chris Browne
+
+<a href="http://slony1-ctl.projects.postgresql.org/">
+Slony1-ctl </a> is a set of shell scripts aiming at simplifying everyday
+administration of a Slony1 replication.
+
+
+<P> Licence: BSD
+
+<P> <B>Principle:</B>
+<p> Once replication nodes and relations between nodes have been defined, one can
+ easily administrate the replication by calling one of the scripts, without
+ need to write slonik scripts anymore.
+
+<b>Features:</b>
+<ul>
+ <li> Initialising a replication
+ <li> Adding/dropping nodes
+ <li> Adding a set
+ <li> Possibility to define cross-replication
+ <li> adding objects
+ <li> switchover/failover
+ <li> Start/stop replication daemons
+ <li> Executing DDL scripts
+</ul>
+---
+Slony-I 2.0.1 Released
+http://main.slony.info/downloads/2.0/source/slony1-2.0.1.tar.bz2
+2009-02-26
+Chris Browne
+
+<P> This release addresses a number of issues found in 2.0.0
+
+<ul>
+<li> Bug #69 - vactables type was being referenced before UPGRADE FUNCTIONS could actually have created it, when upgrading from an earlier version.
+
+<P> This would cause UPGRADE FUNCTIONS to fail.
+
+<li> Bug #64 - use of syslog levels had some inappropriate break statements so that some logging would get lost.
+
+<P> If you had multiple clusters where one cluster name was a substring of the other, slon-tools.pm could find
+ both when looking for slon processes relevant to the shorter cluster name. Added a space to the relevant
+ bit of slon-tools.pm
+
+<li> Failover had an insert into sl_event where # of columns provided didn't match those expected. This
+ resulted from the change of snapshot handling which used to involve 3 columns where in 8.3+, there is
+ now a snapshot type.
+
+<li> Fix syntax error in tools/altperl/slon_watchdog.pl
+
+<li> Add cleanup_interval example to sample slon.conf file
+
+<li> Add cleanup_interval configuration configuration to regression tests
+
+<li> Add documentation for complex failover scenario
+
+<li> Revise installation notes to indicate that xxid.so no longer exists in Slony-I 2.0+
+
+<li> Fix documentation typos
+
+<li> Fixed error with cleanup code which was not purging old data in sl_log_1/sl_log_2
+
+<li> Fix altperl/slontools errors
+
+<li> Added in preliminaries for upgrade from 1.2 to 2.0 - discussion of what the tool
+ needs to do
+
+<li> Bug #63 - Array overrun in logtrigger()
+</ul>
+
+---
+No way currently to upgrade from Slony-I 1.2.x to 2.0.x
+http://www.slony.info/bugzilla/show_bug.cgi?id=69
+2008-12-19
+Chris Browne
+
+<P> Unfortunately, it needs to be noted that there is not, as of yet,
+an upgrade procedure to upgrade an installation of Slony-I 1.2.x to
+2.0. At present, upgrading to 2.0 will essentially require dropping
+out replication and recreating it.
+
+<P> We hope to have an answer as to how to deal with this in the new year.
+---
+Slony-I 2.0.0 Released
+http://main.slony.info/downloads/2.0/source/slony1-2.0.0.tar.bz2
+2008-11-24
+Chris Browne
+
+Differences from 1.2 stream
+
+<ul>
+<li> Removal of TABLE ADD KEY
+
+<li> It drops all support for databases prior to Postgres version 8.3.
+
+<p>This is required because we now make use of new functionality in
+Postgres, namely the trigger and rule support for session replication
+role. As of now, every node (origin/subscriber/mixed) can be dumped with
+pg_dump and result in a consistent snapshot of the database.
+
+<li> Still need alterTableRestore() for the upgrade from 1.2.x to 2.0.
+upgradeSchema() will restore the system catalog to a consistent
+state and define+configure the new versions of the log and deny_access
+triggers.
+
+<li> Fix EXECUTE SCRIPT so that it records the ev_seqno for WAIT FOR EVENT
+and make sure all DDL is executed in session_replication_role "local"
+on the origin as well as all subscribers. This will cause the slony
+triggers to ignore all DML statements while user triggers follow the
+regular configuration options for ENABLE [REPLICA/ALWAYS] or DISABLE.
+
+<li> Let the logshipping files also switch to session_replication_role =
+"replica" or "local" (for DDL).
+
+<li> Sequence tracking becomes enormously less expensive; rather than
+polling *ALL* sequence values for each and every SYNC, the slon
+stores the last value, and only records entries in sl_seqlog when
+the value changes from that last value. If most sequences are
+relatively inactive, they won't require entries in sl_seqlog very
+often.
+
+<li> Change to tools/slony1_dump.sh (used to generate log shipping dump);
+ change quoting of "\\\backslashes\\\" to get rid of warning
+
+<li> Cleanup thread revised to push most of the logic to evaluate which
+ tables are to be vacuumed into a pair of stored functions.
+
+<P> This fairly massively simplifies the C code.
+
+<li> Revised logging levels so that most of the interesting messages are
+ spit out at SLON_CONFIG and SLON_INFO levels. This can allow users
+ to drop out the higher DEBUG levels and still have useful logs.
+
+<li> Changed log selection query to be less affected by long running
+ transaction. This should help, in particular, the scenario where
+ it takes a very long time to subscribe to a set. In that situation,
+ we have had the problem where applying the later SYNCs gets
+ extremely costly as the query selecting logs wound up forced into a
+ Seq Scan rather than an index scan.
+
+<li> Removed all support for STORE/DROP TRIGGER commands. Users
+ should use the ALTER TABLE [ENABLE|DISABLE] TRIGGER functionality
+ available directly in Postgres from now on.
+
+<li> Improve Wiki page generation script so that it has an option to add in
+ a set of [[Category:Foo]] tags to allow automated categorization.
+
+<li> Documented how to fix tables that presently use Slony-I-generated
+ primary key candidates generated by TABLE ADD KEY
+
+<li> Add some specific timestamps during the 2007 "DST rule change
+ ambiguous time" (e.g. - during the period which, under former rules,
+ was not DST, but which now is, due to the recent rule change).
+
+<P> Bill Moran ran into some problems with such dates; varying
+ PostgreSQL versions returned somewhat varying results. This wasn't
+ a Slony-I problem; the data was indeed being replicated correctly.
+
+<li> Made configure a bit smarter about automatically locating
+ docbook2man-spec.pl on Debian, Fedora, BSD.
+
+<li> Tests now generate |pipe|delimited|output| indicating a number of
+ attributes of each test, including system/platform information,
+ versions, and whether or not the test succeeded or failed.
+
+<li> Revised functions that generate listen paths
+
+<li> tools/configure-replication.sh script permits specifying a
+ destination path for generated config files. This enables using
+ it within automated processes, and makes it possible to use it to
+ generate Slonik scripts for tests in the "test bed," which has
+ the further merit of making tools/configure-replication.sh a
+ regularly-regression-tested tool.
+
+<li> Fix to bug #15 - where long cluster name (>40 chars) leads to
+ things breaking when an index name is created that contains
+ the cluster name.
+
+ <P> Warn upon creating a long cluster name.
+ <p> Give a useful exception that explains the cause rather
+ than merely watching index creation fail.
+
+<p><a href= "http://www.slony.info/bugzilla/show_bug.cgi?id=15"> Bug 15 </a>
+
+<li> Fix for bug #19 - added a script to help the administrator
+ search for any triggers on the database that is the source for
+ a schema that is to be used to initialize a log shipping node.
+
+<p> The problem is that some/most/sometimes all triggers and rules
+ are likely to need to be dropped from the log shipping node lest
+ they interfere with replication.
+
+<li> Elimination of custom "xxid" functions
+
+<P> PostgreSQL 8.3 introduces a set of "txid" functions and a
+ "txid_snapshot" type, which eliminates the need for Slony-I to have
+ its own C functions for doing XID comparisons.
+
+<p> Note that this affects the structure of sl_event, and leads to some
+ changes in the coding of the regression tests.
+
+<p> This eliminates the src/xxid directory and contents
+
+<li> All of the interesting cleanup work is now done in the stored
+ function, cleanupEvent(interval, boolean).
+
+<p> Interesting side-effect: You can now induce a cleanup manually,
+ which will be useful for testing.
+
+<li> cleanupEvent now has two parameters, passed in from slon config
+ parameters:
+
+<P> interval - cleanup_interval (default '10 minutes')
+
+<p> This controls how quickly old events are trimmed out. It used to
+ be a hard-coded value.
+
+<p> Old events are trimmed out once the confirmations are aged by
+ (cleanup_interval).
+
+<p> This then controls when the data in sl_log_1/sl_log_2 can be
+ dropped.
+
+<p> Data in *those* tables is deleted when it is older than the
+ earliest XID still captured in sl_event.
+
+<p> boolean - cleanup_deletelogs (default 'false')
+
+<P> This controls whether or not we DELETE data from sl_log_1/sl_log_2
+
+<p> By default, we now NEVER delete data from the log tables; we
+ instead use TRUNCATE.
+
+<li> We now consider initiating a log switch every time cleanupEvent()
+ runs.
+
+<P> If the call to logswitch_finish() indicates that there was no log
+ switch in progress, we initiate one.
+
+<P> This means that log switches will be initiated almost as often as
+ possible. That's a policy well worth debating :-).
+
+<li> logswitch_finish() changes a fair bit...
+
+<P> It uses the same logic as in cleanupEvent() to determine if there
+ are any *relevant* tuples left in sl_log_[whatever], rather than
+ (potentially) scanning the table to see if there are any undeleted
+ tuples left.
+
+<li> At slon startup time, it logs (at SLON_CONFIG level) all of the
+ parameter values. Per <a href="http://www.slony.info/bugzilla/show_bug.cgi?id=21"> Bugzilla entry #21.</a>
+
+
+<li> New slonik "CLONE PREPARE" and "CLONE FINISH" command to assist in
+ creating duplicate nodes based on taking a copy of some existing
+ subscriber node.
+
+<li> We no longer use LISTEN/NOTIFY for events and confirmations, which
+ eliminates the usage that has caused pg_listener bloat. We instead
+ poll against the event table.
+
+<li> Various instances where slonik would use a default node ID of 1 have
+ been changed to remove this.
+
+<P> Slonik scripts may need to be changed to indicate an EVENT NODE (or
+ similar) after migration to v2.0 as a result.
+
+<P> The slonik commands involved:
+
+<ul>
+ <li> STORE NODE - EVENT NODE
+ <li> DROP NODE - EVENT NODE
+ <li> WAIT FOR EVENT - WAIT ON
+ <li> FAILOVER - BACKUP NODE
+ <li> EXECUTE SCRIPT - EVENT NODE
+</ul>
+
+<li> Fixed a problem where ACCEPT_SET would wait for the corresponding
+ MOVE_SET or FAILOVER_SET to arrive while holding an exclusive lock
+ on sl_config_lock, preventing the other remote worker to process
+ that event.
+
+<li> Bug #54 - quite a few Bash-isms in various scripts have been
+ addressed so as to make the shell scripts more portable.
+
+<li> Bug #18 - the function parameter for the logtrigger functions no
+ longer requires any trailing v's
+
+<P> Add a test to "test1" to make sure this logic gets exercised.
+
+<li> Created "start_slon.sh", an rc.d-style script for starting,
+ stopping, and checking status of slon processes.
+
+<P> Integrated this into the regression tests, replacing previous
+ logic for starting/stopping slons, so that this script can be
+ considered carefully tested
+
+<li> Bug #46 - incompatibility with PostgreSQL 8.4 addressed
+
+<li> Use dollar quoting in stored functions
+
+<li> Additional logging of the time spent running queries, broken out on
+ a by-database basis
+
+<li> Fixes to documentation of WAIT FOR EVENT
+
+<li> Fix to bug #63 - cleanup thread had an imperative SELECT that needed
+ to become part of an IF statement
+
+<li> Enhancement - bug #61 - logshipper process should rescan the queue
+ when it empties
+
+<li> Note about "duct tape" tests: There are many of these tests that
+ reside in src/ducttape that reference features removed in v2.0.
+
+<P> We will eventually be replacing these with a more proper "test suite"
+ so we're not remedying all the ducttape tests.
+</ul>
+----
+Slony-I 2.0.0 second RC available
+http://main.slony.info/downloads/2.0/source/slony1-2.0.0-rc2.tar.bz2
+2008-09-24
+Chris Browne
+
+Now available is a second release candidate of version 2.0 of Slony-I,
+fixing a number of issues found since the first release candidate.<BR>
+
+<b>Differences from 2.0.0 RC1</b>
+<BR>
+<ul>
+<li> Bug #54 - fixed various bash-isms </li>
+<li> Bug #18 - function parameter for logtrigger no longer requires trailing "v"'s </li>
+<li> Created start_slon.sh, an rc.d-style script to start, stop, and check status of a slon process, integrating its usage into regression tests </li>
+<li> Bug #46 - incompatibility with PostgreSQL 8.4</li>
+<li> Added an extended example of upgrading from one version of PostgreSQL to another </li>
+<li> Use dollar quoting in stored functions </li>
+<li> Added logging code that lists time spent running queries against different nodes to help when analyzing performance issues </li>
+<li> A little more fixing-up of logging levels </li>
+<li> Test suite uses non-zero lag_interval</li>
+</ul>
+
+---
+Slony-I 1.2.15 available
+http://main.slony.info/downloads/1.2/source/slony1-1.2.15.tar.bz2
+2008-09-12
+Chris Browne
+
+Version 1.2.15 has been released. Changes include:
+<ul>
+<li> Fix to STORE TRIGGER <p>- store trigger was running against all nodes
+ upon subscription
+
+ <P> <a href="http://www.slony.info/bugzilla/show_bug.cgi?id=56"> Bug #56 </a>
+
+<li> Portability changes to some tools/ scripts, fixing some
+ "bash-isms"
+
+<li> Fix to switch statement in slonik.c; unknown how it broke
+
+<li> Fix <a href=
+ "http://bugs.slony.info/bugzilla/show_bug.cgi?id=52"> Bug #52 -
+memory leak</a>
+</ul>
+
+---
+Slony-I 2.0.0 first RC available
+http://main.slony.info/downloads/2.0/source/slony1-2.0.0-rc1.tar.bz2
+2008-06-27
+Chris Browne
+
+Now available is a first release candidate of version 2.0 of Slony-I,
+involving a large number of enhancements done over the last year or
+so.<br>
+
+<b>Differences from 1.2 stream</b>
+
+<ul>
+<li> Removal of TABLE ADD KEY
+
+<li> It drops all support for databases prior to Postgres version 8.3.
+
+<P> This is required because we now make use of new functionality in
+Postgres, namely the trigger and rule support for session replication
+role. As of now, every node (origin/subscriber/mixed) can be dumped with
+pg_dump and result in a consistent snapshot of the database.
+
+<li> Still need alterTableRestore() for the upgrade from 1.2.x to 2.0.
+upgradeSchema() will restore the system catalog to a consistent
+state and define+configure the new versions of the log and deny_access
+triggers.
+
+<li> Fix EXECUTE SCRIPT so that it records the ev_seqno for WAIT FOR EVENT
+and make sure all DDL is executed in session_replication_role "local"
+on the origin as well as all subscribers. This will cause the slony
+triggers to ignore all DML statements while user triggers follow the
+regular configuration options for ENABLE [REPLICA/ALWAYS] or DISABLE.
+
+<li> Let the logshipping files also switch to session_replication_role =
+"replica" or "local" (for DDL).
+
+<li> Sequence tracking becomes enormously less expensive; rather than
+polling *ALL* sequence values for each and every SYNC, the slon
+stores the last value, and only records entries in sl_seqlog when
+the value changes from that last value. If most sequences are
+relatively inactive, they won't require entries in sl_seqlog very
+often.
+
+<li> Change to tools/slony1_dump.sh (used to generate log shipping dump);
+ change quoting of "\\\backslashes\\\" to get rid of warning
+
+<li> Cleanup thread revised to push most of the logic to evaluate which
+ tables are to be vacuumed into a pair of stored functions.
+
+<P> This fairly massively simplifies the C code.
+
+<li> Revised logging levels so that most of the interesting messages are
+ spit out at SLON_CONFIG and SLON_INFO levels. This can allow users
+ to drop out the higher DEBUG levels and still have useful logs.
+
+<li> Changed log selection query to be less affected by long running
+ transaction. This should help, in particular, the scenario where
+ it takes a very long time to subscribe to a set. In that situation,
+ we have had the problem where applying the later SYNCs gets
+ extremely costly as the query selecting logs wound up forced into a
+ Seq Scan rather than an index scan.
+
+<li> Removed all support for STORE/DROP TRIGGER commands. Users
+ should use the ALTER TABLE [ENABLE|DISABLE] TRIGGER functionality
+ available directly in Postgres from now on.
+
+<li> Improve Wiki page generation script so that it has an option to add in
+ a set of [[Category:Foo]] tags to allow automated categorization.
+
+<li> Documented how to fix tables that presently use Slony-I-generated
+ primary key candidates generated by TABLE ADD KEY
+
+<li> Add some specific timestamps during the 2007 "DST rule change
+ ambiguous time" (e.g. - during the period which, under former rules,
+ was not DST, but which now is, due to the recent rule change).
+
+<P> Bill Moran ran into some problems with such dates; varying
+ PostgreSQL versions returned somewhat varying results. This wasn't
+ a Slony-I problem; the data was indeed being replicated correctly.
+
+<li> Made configure a bit smarter about automatically locating
+ docbook2man-spec.pl on Debian, Fedora, BSD.
+
+<li> Tests now generate |pipe|delimited|output| indicating a number of
+ attributes of each test, including system/platform information,
+ versions, and whether or not the test succeeded or failed.
+
+<li> Revised functions that generate listen paths
+
+<li> tools/configure-replication.sh script permits specifying a
+ destination path for generated config files. This enables using
+ it within automated processes, and makes it possible to use it to
+ generate Slonik scripts for tests in the "test bed," which has
+ the further merit of making tools/configure-replication.sh a
+ regularly-regression-tested tool.
+
+<li> Fix to bug #15 - where long cluster name (>40 chars) leads to
+ things breaking when an index name is created that contains
+ the cluster name.
+
+<ul>
+ <li> Warn upon creating a long cluster name.
+ <li> Give a useful exception that explains the cause rather
+ than merely watching index creation fail.
+</ul>
+
+ See <a href="http://www.slony.info/bugzilla/show_bug.cgi?id=15"> Bug #15 </a>
+
+<li> Fix for bug #19 - added a script to help the administrator
+ search for any triggers on the database that is the source for
+ a schema that is to be used to initialize a log shipping node.
+
+<p> The problem is that some/most/sometimes all triggers and rules
+ are likely to need to be dropped from the log shipping node lest
+ they interfere with replication.
+
+<li> Elimination of custom "xxid" functions
+
+<P> PostgreSQL 8.3 introduces a set of "txid" functions and a
+ "txid_snapshot" type, which eliminates the need for Slony-I to have
+ its own C functions for doing XID comparisons.
+
+<P> Note that this affects the structure of sl_event, and leads to some
+ changes in the coding of the regression tests.
+
+<P> This eliminates the src/xxid directory and contents
+
+<li> All of the interesting cleanup work is now done in the stored
+ function, cleanupEvent(interval, boolean).
+
+<P> Interesting side-effect: You can now induce a cleanup manually,
+ which will be useful for testing.
+
+<li> cleanupEvent now has two parameters, passed in from slon config
+ parameters:
+
+<P> interval - cleanup_interval (default '10 minutes')
+
+<P> This controls how quickly old events are trimmed out. It used to
+ be a hard-coded value.
+
+<P> Old events are trimmed out once the confirmations are aged by
+ (cleanup_interval).
+
+<P> This then controls when the data in sl_log_1/sl_log_2 can be
+ dropped.
+
+<P> Data in <i>those</i> tables is deleted when it is older than the
+ earliest XID still captured in sl_event.
+
+<p> boolean - cleanup_deletelogs (default 'false')
+
+<P> This controls whether or not we DELETE data from sl_log_1/sl_log_2
+
+<P> By default, we now NEVER delete data from the log tables; we
+ instead use TRUNCATE.
+
+<li> We now consider initiating a log switch every time cleanupEvent()
+ runs.
+
+<P> If the call to logswitch_finish() indicates that there was no log
+ switch in progress, we initiate one.
+
+<P> This means that log switches will be initiated almost as often as
+ possible. That's a policy well worth debating :-).
+
+<li> logswitch_finish() changes a fair bit...
+
+<P> It uses the same logic as in cleanupEvent() to determine if there
+ are any *relevant* tuples left in sl_log_[whatever], rather than
+ (potentially) scanning the table to see if there are any undeleted
+ tuples left.
+
+<li> At slon startup time, it logs (at SLON_CONFIG level) all of the
+parameter values. Per <a
+href="http://www.slony.info/bugzilla/show_bug.cgi?id=21"> Bugzilla
+entry #21.</a>
+
+<li> New slonik "CLONE PREPARE" and "CLONE FINISH" command to assist in
+ creating duplicate nodes based on taking a copy of some existing
+ subscriber node.
+
+<li> We no longer use LISTEN/NOTIFY for events and confirmations, which
+ eliminates the usage that has caused pg_listener bloat. We instead
+ poll against the event table.
+
+<li> Various instances where slonik would use a default node ID of 1 have
+ been changed to remove this.
+
+<P> Slonik scripts may need to be changed to indicate an EVENT NODE (or
+ similar) after migration to v2.0 as a result.
+
+<P> The slonik commands involved:
+
+<ul>
+ <li> STORE NODE - EVENT NODE
+ <li> DROP NODE - EVENT NODE
+ <li> WAIT FOR EVENT - WAIT ON
+ <li> FAILOVER - BACKUP NODE
+ <li> EXECUTE SCRIPT - EVENT NODE
+</ul>
+<li> Fixed a problem where ACCEPT_SET would wait for the corresponding
+ MOVE_SET or FAILOVER_SET to arrive while holding an exclusive lock
+ on sl_config_lock, preventing the other remote worker to process
+ that event.
+</ul>
+---
+Slony-I 1.2.14 available
+http://main.slony.info/downloads/1.2/source/slony1-1.2.14.tar.bz2
+2008-05-16
+Chris Browne
+
+Version 1.2.14 has been released. Changes include:
+<ul>
+<li> Fix typo in configure-replication.sh (missing CR)
+
+<li> Per <a href="http://www.slony.info/bugzilla/show_bug.cgi?id=35">bug #35,</a>
+ search the Slony share dir for scripts before falling back to the PG
+ share dir on 8.0+
+
+ <p> This has resulted in quite a lot of discussion on bug #35; we
+ <i>need</i> agreement that this change is an apropos way to go...
+
+<li> Change test framework to write out the test name into
+ $TEMPDIR/TestName
+
+<li> Patch that seems to resolve a race condition with
+ ACCEPT_SET
+
+<li> Fix bug #49 - mishandling by slony_logshipper of quotes and
+ backslashes.
+
+<li> Fix bug #50 - slony_logshipper had a variable access <i>after</i>
+ memory was freed
+
+</ul>
+---
+Docs for 1.2.13 updated to include png, man pages
+http://main.slony.info/downloads/1.2/source/slony1-1.2.13-docs.tar.bz2
+2008-02-29
+Chris Browne
+
+Vivek Khera observed that the documentation tarball did not include
+.png files or man pages; added this in, and rebuilt the tarball.
+
+<P>There is no change to the source code tarball.
+---
+Slony-I 1.2.13 available
+http://main.slony.info/downloads/1.2/source/slony1-1.2.13.tar.bz2
+2008-02-09
+Chris Browne
+
+<ul>
+<li> Fixed problem with compatibility with PostgreSQL 8.3; function
+ typenameTypeId() has 3 arguments as of 8.3.
+
+ <p> This now allows Slony-I to work with the PostgreSQL 8.3.0 release.
+
+<li> Added in logic to ensure that max # of SYNCs grouped together is
+ actually constrained by config parameter sync_group_maxsize.
+
+<li> Fix to show_slony_configuration - point to proper directory where
+ slon/slonik are actually installed.
+
+<li> Fix to slonik Makefile + slonik.c - Change slonik build to query
+ Postgres for the share directory at runtime - per Dave Page
+
+<li> Removed spurious NOTIFY on "_%s_Confirm"; this is no longer needed
+ in the 1.2 branch, as there is no LISTEN on this notification.
+ Noted in <a href="http://www.slony.info/bugzilla/show_bug.cgi?id=32"> bug #32</a>
+</ul>
+---
+Slony-I Bugzilla available
+http://bugs.slony.info/bugzilla/
+2007-11-13
+Christopher Browne
+
+<P> Many thanks to Command Prompt staff for installing and configuring
+a <a href="http://www.bugzilla.org/"> Bugzilla</a> instance for use in
+tracking Slony-I bugs and feature requests.
+
+<P> Feature and bug lists will be migrating into this over the next
+little while...
+
+---
+Slony-I 1.2.12 available
+http://slony.info/downloads/1.2/source/slony1-1.2.12.tar.bz2
+2007-11-12
+Christopher Browne
+
+<P> Version 1.2.12 is now released
+<ul>
+<li>Fixed problem with DDL SCRIPT parser where C-style comments were
+ not being processed properly
+
+<li>Added stored functions and documentation for adding empty tables
+ (notably *partitions*) to replication. Note these functions
+ do no work when not specifically requested.
+
+ CAVEAT: This functionality may not work as expected on versions
+ of PostgreSQL earlier than 8.1. Mind you, partitioning tends
+ to function pretty poorly in earlier versions of PostgreSQL as
+ there were substantial enhancements in 8.1 and following versions.
+
+<li>Added a fairly substantial partitioning test to exercise the
+ new stored functions above.
+
+<li>Backport "listen path" generator function from CVS HEAD (2.0) to
+ 1.2 branch.
+
+<li>Fixed a problem with "EXECUTE SCRIPT" (introduced in remote_worker.c
+ version 1.124.2.13) where moving the relevant code into a subroutine
+ at the end led to losing the "BEGIN; SET TRANSACTION ISOLATION LEVEL
+ SERIALIZABLE;" query that needs to be the first thing run...
+
+<li>Fixing the archive sequence generations (in log shipping). All
+ non-SYNC events must start the local transaction before creating the
+ archive as well, so that the lock on the archive counter table
+ serializes archive creation.
+
+<li>Fixed logging done in local_listener.c - various places, there was
+ no '\n' in some cases, which would lead to entries being folded
+ together.
+
+<li>Fix launch_slons.sh - was not stripping quotes from PID file name
+
+<li>Error handling for "ERROR: could not serialize access due to
+ concurrent update"
+
+ <P> If this error is encountered when starting processing of
+ sl_archive_counter, then two threads are fighting over access to
+ this counter, and at least one has just failed.
+
+ <P> Rather than waiting, we ask to restart the node immediately.
+
+<li> Fixes to slonik_build_env script - it wasn't properly handling
+ cases where there was just 1 table or 1 sequence, and had a
+ problem with the -schema option - thanks, Bernd Helmle
+
+<li> Don't bother building slony_logshipper on Win32 as it doesn't work
+ there at this point.
+
+<li> If slonik connects as other than a superuser, then generate error
+ message indicating this to the user.
+</ul>
+---
+Slony-I 1.2.11 released
+http://slony.info/downloads/1.2/source/slony1-1.2.11.tar.bz2
+2007-08-28
+Christopher Browne
+
+We are pleased to announce general availability of Slony-I 1.2.11.
+
+<P> Fixes are the following:
+<ul>
+<li> Add in tools/mkservice scripts previously added to CVS HEAD
+
+<li> During subscription, do UPDATE to pg_class.relhasindex *after* the
+ TRUNCATE because, in 8.2+, TRUNCATE resets this attribute
+
+<li> Fixed a problem with the setsync tracking with Log Shipping in cases
+ where slon does an internal restart (thereby rereading the
+ pset.ssy_seqno) and ignoring non-SYNC events because those don't
+ change the sl_setsync table.
+
+<li> More explicit type casting of text objects for compatibility with
+ PostgreSQL 8.3
+
+<li> Fixed problem with DDL SCRIPT statement parser: it wasn't 'quoting'
+ semicolons inside parentheses (this notably occurs in CREATE RULE).
+
+<li> Fixed problem with DDL SCRIPT statement submission; it was
+ interpreting the statement as a format string, which would have
+ ill effects in the presence of things that are interpreted such
+ as format strings (%d, %f, %s) and \backslashed things like \\, \n.
+
+<li> Further DDL Script issue: non-terminated statement at the end
+ (e.g. - without trailing semicolon ";") would get omitted.
+
+<li> Typo fix: when trying to disable a node, the logs would report
+ "enableNode" rather than "disableNode". Fixed.
+
+<li> Add usage/version options to help output in slon.
+
+<li> Fix archive logging for replicated sequences.
+
+<li> Fix to log shipping - added another table, sl_archive_counter where
+ the log writing slon simply tracks when it wrote the last offline
+ archive file and maintains a counter. This counter is now tracked in
+ the offline replica and must increment gap free.
+
+<li> Change the filenames of archive logs to be based on internal archive
+ tracking number. This makes it easy for the mechanism applying
+ archives to figure out what needs to be applied next - just look in
+ sl_archive_tracking.
+
+<li> Fix log shipping test to accomodate the new tracking scheme, and
+ update documentation to describe this better.
+</ul>
+---
+Generating RPMS for Slony-I
+http://slony.info/
+2007-06-28
+Devrim Gunduz
+
+RPM "spec" files are a part of the Slony-I build; if you require RPMs
+for your flavour of RPM-based distribution, try building Slony-I thus:
+
+<pre>
+./configure
+make rpm
+</pre>
+
+For systems reasonably similar to Fedora and RHAS, this will generate
+.rpm files that will be compatible with your system.
+---
+Turkish Documentation for Slony-I
+http://www.enderunix.org/docs/postgresql/
+2007-06-27
+Ismail Yenigul
+
+Ismail Yenigul has made available documentation written in Turkish in
+<a href=
+"http://www.enderunix.org/docs/postgresql/slony_replication.odt">
+StarOffice Writer format </a> or <a href=
+"http://www.enderunix.org/docs/postgresql/slony_replication.pdf"> PDF
+</a>.
+---
+Slony-I 1.2.10 Windows Binaries Available
+http://developer.pgadmin.org/~hiroshi/Slony-I/
+2007-06-27
+Hiroshi Saito
+
+Slony-I 1.2.10 has been built for Windows; binaries are available <a
+href="http://developer.pgadmin.org/~hiroshi/Slony-I/"> here. </a>
+---
+Slony-I 1.2.10 Released
+http://lists.slony.info/downloads/1.2/source/slony1-1.2.10.tar.bz2
+2007-06-26
+Chris Browne
+
+We are pleased to announce the release of Slony-I version 1.2.10.
+Sources as well as pre-built documentation is available in the
+download area; users of RPM-based systems and Windows will likely see
+suitable packages soon.
+---
+Slony-I 1.2.10 pre-release tarball #2 uploaded
+http://lists.slony.info/downloads/1.2/source/slony1-1.2.10-pre2.tar.bz2
+2007-06-21
+Chris Browne
+
+I have uploaded a tarball for 1.2.10 based on the fixes that have come
+in this week to <a href=
+"http://main.slony.info/documentation/logshipping.html"> log shipping
+</a>.
+
+<P> I have run tests of this build on Debian/Unstable on the IA-32
+architecture against each of PostgreSQL 7.4, 8.0, 8.1, 8.2, and a
+recent copy of CVS HEAD (e.g. - 8.3).
+
+<P> Please <i>do not</i> release binaries based on this tarball; that
+could lead to the regrettable situation of people downloading
+something that isn't the true final release of 1.2.10. The license
+permits such things, but <i>please</i> wait until we call this final...
+---
+Logshipping issue solved
+http://lists.slony.info/pipermail/slony1-commit/2007-June/001827.html
+2007-06-19
+Chris Browne
+
+Jan's Patch of June 19th evidently resolves the log shipping problems
+to the point that it survives the "torture test."
+
+<P> Retesting ongoes...
+---
+Version 1.2.10 - log shipping problem to solve
+http://lists.slony.info/pipermail/slony1-bugs/2007-June/000017.html
+2007-06-12
+Chris Browne
+
+Alas, I found a problem with log shipping. I wrote a test where I
+surrounded a DDL_SCRIPT event with a series of STORE_TRIGGER events;
+this led to a fairly wacky set of SYNC ID numbers getting generated.
+(See the "testlogship" test in the tests area for details on the
+test.)
+
+<P> Well, comprehensively breaking it hopefully leads to a
+comprehensive fix...
+
+<P> In more positive news, the test called "testmultiplemoves" seems
+to be working well, so there's more testing taking place than ever...
+---
+Version 1.2.10 testing still under way
+http://main.slony.info/downloads/1.2
+2007-06-11
+Chris Browne
+
+I have done further updates to documentation after discovering a
+problem with compatibility of UPDATE FUNCTIONS with versions 8.1.0
+thru 8.1.3. Alas, you won't have much success running UPDATE
+FUNCTIONS on those versions.
+
+<P> Jan Wieck has made various casting changes throughout the code to
+address a change in how version 8.3 handles the automatic casting of
+string values. This has resulted in my needing to run the latest CVS
+thru a comprehensive set of cross-PG-version tests, again, because
+there is a potential for this to break compatibility with elder
+versions of PostgreSQL. (Hopefully not, but we'd better test, hadn't
+we...)
+---
+Sample of configuring Slony-I on Windows
+http://winpg.jp/~saito/Slony-I-sample/
+2007-05-02
+Hiroshi Saito
+Here are <a href="http://winpg.jp/~saito/Slony-I-sample/">sample configuration files</a> for the usage of Slony-I 1.2.9 on Windows.
+---
+Slony-I Release - 1.2.9
+http://main.slony.info/downloads/1.2
+2007-03-22
+Chris Browne
+We are pleased to announce the release of version 1.2.9, which may be
+found <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.9.tar.bz2">here</a>.
+There is also a <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.9-docs.tar.bz2">Documentation tarball </a>.
+
+<P> This release fixes several problems that were found in the 1.2 stream:
+<ul>
+<li> Reverted change that tried to support elderly apache rotatelogs
+
+<li> Added a patch file to apply if you need to support elderly apache rotatelogs (tools/altperl/old-apache-rotatelogs.patch)
+
+<li> Bug in UPDATE FUNCTIONS - wrong quoting in plpgsql function
+
+<li> Add a regression test that runs UPDATE FUNCTIONS to ensure that it at least has no syntax errors
+</ul>
+---
+Slony-I Release - 1.1.9
+http://main.slony.info/downloads/1.1
+2007-03-22
+Chris Browne
+We are pleased to announce the release of version 1.1.9, which may be
+found <a href="http://main.slony.info/downloads/1.1/source/slony1-1.1.9.tar.bz2">here</a>.
+
+<P> This release fixes several problems that were found in the 1.1 stream:
+<ul>
+<li> Missed adding v81 SQL base files to CVS
+
+<li> Reverted change that tried to support elderly apache rotatelogs
+
+<li> Added a patch file to apply if you need to support elderly apache rotatelogs (tools/altperl/old-apache-rotatelogs.patch)
+</ul>
+---
+Slony-I Release - 1.2.8
+http://main.slony.info/downloads/1.2
+2007-03-16
+Chris Browne
+We are pleased to announce the release of version 1.2.8, which may be
+found <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.8.tar.bz2">here</a>.
+There is also a <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.8-docs.tar.bz2">Documentation tarball </a>.
+
+<P> This release fixes several problems that were found in the 1.2 stream:
+<ul>
+<li> Change to rotatelogs configuration to support older versions of Apache
+log rotator
+
+<li> Fix to altperl "execute script" script to pass the filename properly
+
+<li> Fix to <tt>src/backend/slony1_funcs.v80.sql</tt> - comment on the right function in v8.0
+
+<li> Fix to <tt>src/slonik/slonik.c</tt> - it wasn't pulling in the right version of slony1_funcs.?.sql in some cases (notably with versions 8.1 and 8.2)
+
+<li> Updated docs on creating releases to describe the version mismatch problem found above in <tt>slonik.c</tt>
+</ul>
+---
+Slony-I Release - 1.1.8
+http://main.slony.info/downloads/1.1
+2007-03-16
+Chris Browne
+We are pleased to announce the release of version 1.1.8, which may be
+found <a href="http://main.slony.info/downloads/1.1/source/slony1-1.1.8.tar.bz2">here</a>.
+
+<P> This release fixes several problems that were found in the 1.1 stream:
+<ul>
+<li> Change to rotatelogs configuration to support older versions of Apache
+log rotator
+
+<li> Fix to altperl "execute script" script to pass the filename properly
+
+<li> Fix to xxid Makefile: in the 1.1 branch, xxid.v73.sql is still in
+use, and should be copied to generate the other versions.
+
+<li> Fix to <tt>src/backend/slony1_funcs.v80.sql</tt> - comment on the right function in v8.0
+
+<li> Fix to <tt>src/slonik/slonik.c</tt> - it wasn't pulling in the right version of slony1_funcs.?.sql in some cases (notably with versions 8.1 and 8.2)
+
+</ul>
+---
+Slony-I Release - 1.2.7
+http://main.slony.info/downloads/1.2
+2007-03-07
+Chris Browne
+We are pleased to announce the release of version 1.2.7, which may be
+found <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.7.tar.bz2">here</a>.
+There is also a <a href="http://main.slony.info/downloads/1.2/source/slony1-1.2.7-docs.tar.bz2">Documentation tarball </a>.
+
+<P> This release fixes several problems that were found in the 1.2 stream:
+<ul>
+<li> Add remote_listen_timeout parameter to slon.conf
+
+<p> This addresses the problem where a slon times out when accessing
+sl_event if a node has been out of commission for a long time (several
+days)
+
+<li> Resolve bug #1623
+
+<p> In this bug, big "action lists" that need to get compressed could cause
+a logging printf to blow up. Changed the logging level so that detail
+is only shown at level 4, which won't bite people by default.
+
+<li> UNINSTALL NODE failures now show node # in slonik error messages
+
+<P> If a user ran several UNINSTALL NODE requests in a single slonik
+script, and one of them broke, you'd have no ready way to tell which
+node this failed on. Added code to report the node # where it failed.
+
+<li> Added test to test1 for function generate_sync_event() and make_function_strict
+
+<li> Added "v81" files (for slony1_base.v81.sql, slony1_funcs.v81.sql,
+xxid.v81.sql), necessary to support 8.1 "ALTER FUNCTION ... STRICT";
+
+<li> Fixed quoting problem in generate_sync_event()
+
+<li> Added functionality to UPDATE FUNCTIONS to make xxidin() function
+STRICT; the absence of this caused postmaster to fall over when
+processing MOVE SET event in PG v8.2
+
+<li> Added documentation of an issue surrounding NULLABLE columns to the
+log analysis chapter of the admin guide and to the UPGRADING docs.
+
+<li> When you run MOVE SET, this populates sl_setsync for the moved set
+ even on nodes that are not subscribed. If, subsequent to doing this,
+ you attempt a SUBSCRIBE SET for a formerly-unsubscribed node, the
+ subscription will fail right at the end when the slon tries to insert a
+ new value to sl_setsync.
+
+<P> The fix: DELETE from sl_setsync immediately before the INSERT. This
+ will silently blow away any 'offending' sl_setsync row.
+
+<p> (As observed by Afilias staff...)
+
+<li> Log shipping fix - storage of sl_setsync_offline call had a wrong
+ printf type; change from %d to %s
+</ul>
+---
+Slony-I Release - 1.1.7
+http://main.slony.info/downloads/1.1
+2007-03-07
+Chris Browne
+We are pleased to announce the release of version 1.1.7, which may be
+found <a href="http://main.slony.info/downloads/1.1/source/slony1-1.1.7.tar.bz2">here</a>.
+It fixes several problems that were found in the 1.2 stream that were readily back-ported to 1.1:
+<ul>
+<li>Add remote_listen_timeout parameter to <tt>slon.conf</tt>
+
+<p> This addresses the problem where a slon times out when accessing
+sl_event if a node has been out of commission for a long time (several
+days)
+
+<li> Add node numbers to error reports in slonik
+
+<p> If portions of UNINSTALL NODE break, report in the error message which node
+it was working on. That way the gentle user gets an indication as to
+which node 'broke' if the slonik script contained multiple such
+requests.
+
+<li> Applied bug fix for #1538
+
+<p> If cluster has only one node, then remove all events up to the last
+SYNC. That allows the cleanup loop to clear out sl_log_{1/2}.
+Otherwise, the log tables will forever bloat until you add a second
+node...
+
+<li> Added test to test1 for function generate_sync_event() and make_function_strict
+
+<li> Added "v81" files (for slony1_base.v81.sql, slony1_funcs.v81.sql,
+xxid.v81.sql), necessary to support 8.1 "ALTER FUNCTION ... STRICT";
+
+<li> Fixed quoting problem in generate_sync_event()
+
+<li> Added functionality to UPDATE FUNCTIONS to make xxidin() function
+STRICT; the absence of this caused postmaster to fall over when
+processing MOVE SET event in PG v8.2 (not to say that Slony-I 1.1 now
+*supports* 8.2; it does not)
+
+<li> When you run MOVE SET, this populates sl_setsync for the moved set
+ even on nodes that are not subscribed. If, subsequent to doing this,
+ you attempt a SUBSCRIBE SET for a formerly-unsubscribed node, the
+ subscription will fail right at the end when the slon tries to insert a
+ new value to sl_setsync.
+
+<p> The fix: DELETE from sl_setsync immediately before the INSERT. This
+ will silently blow away any 'offending' sl_setsync row.
+
+<P> (As observed by Afilias staff...)
+
+<li> Log shipping fix - storage of sl_setsync_offline call had a wrong
+ printf type; change from %d to %s
+</ul>
+---
+Slony-I New Web Site!
+http://main.slony.info
+2007-03-02
+Chris Browne
+We are pleased to announce the release of the new Slony-I web site at <tt>main.slony.info</tt>.
+---
+Slony-I New CVS Site!
+http://main.slony.info/cvs.html
+2007-01-20
+<a href="mailto:cbbrowne at acm.org">Chris Browne</a>
+The Slony-I project is now making active use of CVS repositories at <tt>cvs.slony.info</tt>; this replaces the former
+CVS repositories at gBorg. We thank the gBorg operators for their support over the last few years, and Command Prompt for their provision of hardware, administrative, and hosting services for <tt>cvs.slony.info</tt>.
+---
Modified: traduc/trunk/slony/website/cvs.html
===================================================================
--- traduc/trunk/slony/website/cvs.html 2009-08-23 15:43:43 UTC (rev 1377)
+++ traduc/trunk/slony/website/cvs.html 2009-08-30 11:52:16 UTC (rev 1378)
@@ -88,6 +88,35 @@
<p>This will eventually discuss how to get at Slony-I
CVS...</p>
+
+ <h1>Anonymous CVS Access</h1>
+
+ <p>You may access Slony-I sources via anonymous CVS using
+ the following command:</p>
+ <pre>
+CVSROOT=":pserver:anonymous at main.slony.info:/slony1" cvs login
+(when it prompts for a password, you may press [enter])
+CVSROOT=":pserver:anonymous at main.slony.info:/slony1" cvs co slony1-engine
+</pre>
+
+ <h1>Developer CVS Access</h1>
+
+ <p>If you are one of the developers, and have had your
+ ssh key added in on a suitable account, you can access as
+ a specific user with update privileges:</p>
+ <pre>
+MYSLONYNAME=cbbrowne CVS_RSH=ssh CVSROOT=":ext:${MYSLONYNAME}@main.slony.info:/home/cvsd/slony1" cvs co slony1-engine
+</pre>
+
+ <h1>Modules Available</h1>
+
+ <ul>
+ <li><tt>slony1-engine</tt> - the replication engine
+ project</li>
+
+ <li><tt>slony1-www</tt> - web site material for
+ main.slony.info</li>
+ </ul>
<hr>
<address>
@@ -95,7 +124,7 @@
Browne</a>
</address><!-- Created: Thu Jan 25 11:44:43 EST 2007 -->
<!-- hhmts start -->
- Last modified: Thu Jan 25 11:46:45 EST 2007
+ Last modified: Thu Jan 25 14:42:23 EST 2007
<!-- hhmts end -->
</td>
</tr>
Added: traduc/trunk/slony/website/downloads/CVS/Entries
===================================================================
--- traduc/trunk/slony/website/downloads/CVS/Entries (rev 0)
+++ traduc/trunk/slony/website/downloads/CVS/Entries 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+D
Added: traduc/trunk/slony/website/downloads/CVS/Repository
===================================================================
--- traduc/trunk/slony/website/downloads/CVS/Repository (rev 0)
+++ traduc/trunk/slony/website/downloads/CVS/Repository 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+slony1-www/downloads
Added: traduc/trunk/slony/website/downloads/CVS/Root
===================================================================
--- traduc/trunk/slony/website/downloads/CVS/Root (rev 0)
+++ traduc/trunk/slony/website/downloads/CVS/Root 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1 @@
+:pserver:anonymous at main.slony.info:/slony1
Modified: traduc/trunk/slony/website/index.html
===================================================================
--- traduc/trunk/slony/website/index.html 2009-08-23 15:43:43 UTC (rev 1377)
+++ traduc/trunk/slony/website/index.html 2009-08-30 11:52:16 UTC (rev 1378)
@@ -5,7 +5,8 @@
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org">
- <title>Slony-I</title>
+ <title>Slony-I - "master to multiple slaves" replication system
+ with cascading and failover</title>
<style type="text/css">
a:link{
font-family:lucida,arial,helvetica; font-size: 11px; font-style:normal; font-weight:bold; color:#003399; text-decoration:none;
@@ -90,13 +91,13 @@
<p>It will soon be able to be actively used for Slony-I
CVS, downloads, and mailing lists; it's not <i>quite</i>
- ready yet, so for now, you likely still want to look to the
- <a href=
+ ready yet, so for now, you likely still want to look to
+ the <a href=
"http://gborg.postgresql.org/project/slony1/projdisplay.php">
gBorg Slony-I project</a> for the time being.</p>
- <p> There will be announcements on the gBorg-based mailing
- lists indicating the migration when all is ready... </p>
+ <p>There will be announcements on the gBorg-based mailing
+ lists indicating the migration when all is ready...</p>
<h1>Slony-I</h1>
@@ -122,19 +123,33 @@
"http://developer.postgresql.org/%7Ewieck/slony1/Slony-I-concept.pdf">
here</a>.</p>
- <h1>Slony-I 1.2.6</h1>
+ <h1>Slony-I 1.2.7</h1>
- <p>At long last, here is version 1.2.6. It has many
+ <p>Now released is version 1.2.7. It has a number of fixes
+ and minor enhancements as listed in the <a href=
+ "http://main.slony.info/viewcvs/viewvc.cgi/slony1-engine/RELEASE-1.2.7?view=log">Release
+ Notes</a> .</p>
+
+ <p>This has been run thru the <a href=
+ "http://linuxdatabases.info/info/releasechecklist.html">Release
+ Checklist</a></p>
+
+ <p>There are two tarballs available in the downloads area <a
+ href="http://main.slony.info/downloads/1.2">here</a></p>
+
+ <h1>Slony-I 1.1.7</h1>
+
+ <p>Now released is version 1.1.7. It has a number of fixes and minor
enhancements as listed in the <a href=
- "http://pgfoundry.org/frs/shownotes.php?release_id=730">Release
+ "http://main.slony.info/viewcvs/viewvc.cgi/slony1-engine/RELEASE-1.1.7?view=log">Release
Notes</a> .</p>
<p>This has been run thru the <a href=
"http://linuxdatabases.info/info/releasechecklist.html">Release
Checklist</a></p>
- <p>There are two tarballs available <a href=
- "http://pgfoundry.org/frs/?group_id=1000122">here</a></p>
+ <p>There are two tarballs available in the downloads area <a
+ href="http://main.slony.info/downloads/1.2">here</a></p>
<h1>Slony-I and PostgreSQL 8.1</h1>
@@ -176,36 +191,38 @@
</pre>for every node in the cluster.
</li>
- <li>Start all slon replication engines.
+ <li>Start all slon replication engines.</li>
+ </ol>
- <h1>Libpq requirements</h1>
+ <p>For more details, see also <a href=
+ "./adminguide/slony1-1.2.6/doc/adminguide/slonyupgrade.html">
+ Upgrading Slony-I</a> .</p>
- <p>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:
- <a href=
- "http://developer.postgresql.org/%7Ewieck/slony1/download/threadsafe-libpq-742.diff.gz">
- threadsafe-libpq-742.diff.gz.</a></p>
+ <h1>Libpq requirements</h1>
- <h1>RPMs</h1>
+ <p>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: <a href=
+ "http://developer.postgresql.org/%7Ewieck/slony1/download/threadsafe-libpq-742.diff.gz">
+ threadsafe-libpq-742.diff.gz.</a></p>
- <p>RPM files for some versions of Red Hat Linux are
- available <a href=
- "http://pgfoundry.org/projects/slony1">here</a> ,
- including SRPM (Source RPM) files that may be helpful
- if you wish to generate RPM files for distributions
- not yet supported.</p>
+ <h1>RPMs</h1>
- <p>This project is released under the Berkeley/BSD
- license.</p>
- </li>
- </ol>
+ <p>RPM files for some versions of Red Hat Linux are
+ available <a href=
+ "http://pgfoundry.org/projects/slony1">here</a> ,
+ including SRPM (Source RPM) files that may be helpful if
+ you wish to generate RPM files for distributions not yet
+ supported.</p>
+
+ <p>This project is released under the Berkeley/BSD
+ license.</p>
<hr>
<address>
@@ -213,8 +230,8 @@
Browne</a>
</address><!-- Created: Thu Jan 25 11:13:08 EST 2007 -->
<!-- hhmts start -->
- Last modified: Thu Jan 25 12:01:53 EST 2007
- <!-- hhmts end -->
+Last modified: Wed Mar 7 18:25:06 EST 2007
+<!-- hhmts end -->
</td>
</tr>
</tbody>
Added: traduc/trunk/slony/website/index.php
===================================================================
--- traduc/trunk/slony/website/index.php (rev 0)
+++ traduc/trunk/slony/website/index.php 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,192 @@
+<?PHP
+require_once("layout.php");
+
+$target=$_GET["target"];
+
+switch($target){
+ case '404':
+ header("HTTP/1.0 404 Not Found");
+ echo layout_header();
+ echo layout_defaultblock('404, NOT FOUND','',file_get_contents('./content/404.txt'));
+ break;
+ case 'docs':
+ $text = '';
+ $file = str_replace(array("/",".."),"",$_GET["file"]);
+ if ($file == "") $file="index.html";
+ $text=@file_get_contents('./adminguide/current/doc/adminguide/'.$file);
+ if ($text == ''){
+ header("HTTP/1.0 404 Not Found");
+ echo layout_header();
+ echo layout_defaultblock('404, NOT FOUND','',file_get_contents('./content/404.txt'));
+ } else {
+ echo layout_header();
+ $title=between("TITLE\n>","</TITLE",$text);
+ echo layout_defaultblock($title,$link,$text);
+ }
+ break;
+ case 'download':
+ $version = "";
+ if ($_GET["version"] == "1.0") $version = "1.0";
+ if ($_GET["version"] == "1.1") $version = "1.1";
+ if ($_GET["version"] == "1.2") $version = "1.2";
+ if ($_GET["version"] == "2.0") $version = "2.0";
+ $platform = "";
+ if ($_GET["platform"]=="source") $platform = "source";
+ if ($_GET["platform"]=="win32") $platform = "win32";
+ if ($_GET["platform"]=="rpm") $platform = "rpm";
+
+ if ($version == ""){
+ $path = './downloads/';
+ } else {
+ if (platform != "") {
+ $path = './downloads/'.$version.'/'.$platform.'/';
+ } else {
+ $path = './downloads/'.$version.'/';
+ }
+ $sums = @file_get_contents($path.'MD5SUMS');
+ }
+
+ if ($dh = opendir($path)) {
+ $files = array();
+ $mysums = array();
+ while (($file = readdir($dh)) !== false) {
+ if ((($version == "") || ($platform == ""))&& ($file != ".") && ($file != "..")){
+ array_push($files, $file);
+ } else if ((substr($file, strlen($file) - 4) == '.bz2') ||
+ (substr($file, strlen($file) - 4) == '.rpm') ||
+ (substr($file, strlen($file) - 4) == '.zip')
+ ) {
+ array_push($files, $file);
+ $pos = 0;
+ $pos = strpos($sums,$file);
+ if ($pos > 0)
+ array_push($mysums,substr($sums,$pos-34,32));
+ }
+ }
+ closedir($dh);
+ }
+
+ // Sort the files and display
+ //sort($files);
+ echo layout_header();
+ $text = "";
+ if ($version == "") {
+ $text .= "<h1>Please select a Slony version</h1>";
+ $text .= "<table>\n";
+ } else {
+ if ($platform == ""){
+ $text .= "<h1>Please select your preferred packaging</h1>";
+ $text .= "<table>\n";
+ } else {
+ $text .= "<h1>Slony $version files</h1>";
+ $text .= "<table>\n<tr><td>File</td><td>Type</td><td>MD5SUM</td></tr>\n";
+ }
+ }
+ $c = 0;
+ foreach ($files as $file) {
+ $title = $file;
+ $type = "";
+ if (strpos($file,'tar.bz2')>0) $type="Slony tarball";
+ if (strpos($file,'.zip')>0) $type="Slony for windows msi installer";
+ if ((strpos($file,'doc')>0) && ((strpos($file,'tar.bz2')>0))) $type="Documentation";
+ if (strpos($file,'source') !== false) $type="Slony source files and documentation";
+ if (strpos($file,'win32') !== false) $type="Slony for Windows";
+ if (strpos($file,'rpm') !== false) $type="Slony RPM files";
+ if (($version == "") || ($platform =="")) $file .= "/";
+
+ $text .= "<tr><td><a href=\"$file\" title=\"$title\">$title</a></td><td>$type</td><td>$mysums[$c]</td></tr>\n";
+ $c++;
+ }
+ $text .= "</table>\n";
+ $url = "/downloads/";
+ $title = "Slony downloads";
+ if ($platform != "") {
+ $url .= $version."/";
+ $title .= " / ".$version." /";
+ }
+ echo layout_defaultblock($title,$url,$text);
+
+ break;
+ case 'cvs':
+ echo layout_header();
+ $fp = fopen('./content/cvs.txt','r');
+ if ($fp){
+ $title=trim(fgets($fp,256));
+ $link=trim(fgets($fp,256));
+ $text="";
+ while (!feof($fp)) $text.=fgets($fp,256);
+ fclose($fp);
+ }
+ echo layout_defaultblock($title,$link,$text);
+ break;
+ default:
+ echo layout_header();
+ echo layout_leftcol_start();
+ $fp = fopen('./content/intro.txt','r');
+ if ($fp){
+ $title=trim(fgets($fp,256));
+ $link=trim(fgets($fp,256));
+ $text="";
+ while (!feof($fp)) $text.=fgets($fp,256);
+ fclose($fp);
+ }
+ echo layout_introblock($title,$link,$text);
+
+ $fp = fopen('./content/frontpage.txt','r');
+ if ($fp){
+ $text="";
+ $article_count = 0;
+ while (!feof($fp)){
+ $buf=fgets($fp,256);
+ if (strpos($buf,'---')!==false){
+ if ($article_count < 5){
+ if ($text != "") echo layout_defaultblock($title,$link,$text);
+ } else {
+ break;
+ }
+ $article_count++;
+ $text = "";
+ $title = trim(@fgets($fp,256));
+ $link = trim(@fgets($fp,256));
+ } else {
+ $text .= $buf;
+ }
+ }
+ fclose($fp);
+ }
+
+ echo layout_leftcol_stop();
+ echo layout_rightcol_start();
+
+ $fp = fopen('./content/news.txt','r');
+ if ($fp){
+ $text="";
+ $article_count = 0;
+ while (!feof($fp)){
+ $buf=fgets($fp,256);
+ if (strpos($buf,'---')!==false){
+ if ($article_count < 12){
+ if ($text != "") echo layout_defaultblock($title,$link,$text,$stamp,$poster);
+ } else {
+ break;
+ }
+ $article_count++;
+ $text = "";
+ $title = trim(@fgets($fp,256));
+ $link = trim(@fgets($fp,256));
+ $stamp = @fgets($fp,256);
+ $poster = @fgets($fp,256);
+ } else {
+ $text .= $buf;
+ }
+ }
+ fclose($fp);
+ }
+
+ echo layout_rightcol_stop();
+}
+
+
+echo layout_footer();
+
+?>
Added: traduc/trunk/slony/website/layout.php
===================================================================
--- traduc/trunk/slony/website/layout.php (rev 0)
+++ traduc/trunk/slony/website/layout.php 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,152 @@
+<?PHP
+
+function layout_header($active=""){
+$output = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html lang="en">
+<head>
+<title>Slony-I</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<link rel="stylesheet" href="/style.css" type="text/css" />
+<!-- Design Copyright 2007-2009 Niels Breet -->
+</head>
+
+<body>
+<div class="header">
+ <div class="left">
+ <div class="menu">
+ <a href="/" title="Go to the Slony homepage">Home</a>
+ <a href="/scm/" title="Go to Slony CVS information">CVS</a>
+ <a href="http://lists.slony.info/mailman/listinfo" title="Slony mailinglists">Mailinglists</a>
+ <a href="/documentation/" title="Go to the documentation section.">Documentation</a>
+ <a href="/downloads/" title="Get Slony!">Download</a>
+ <a href="http://bugs.slony.info/bugzilla/" title="Slony-I Bugzilla"> Bugs </a>
+ </div>
+ </div>
+ <div class="right">
+ </div>
+</div>
+
+<div class="content">
+';
+return $output;
+}
+
+function layout_footer(){
+$output ='
+ <br clear="all">
+ <div class="footer">
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><div class="copyright">Content © 2007-2009 Slony Development Group - Hosting provided by <a href="http://www.commandprompt.com" title="Thanks guys!">Command Prompt, Inc.</a></div></div>
+ </div>
+ </div>
+</div>
+
+</body>
+</html>
+';
+return $output;
+}
+
+
+function layout_leftcol_start(){
+$output = '
+ <div class="col1">
+';
+return $output;
+}
+
+function layout_leftcol_stop(){
+$output = '
+ </div>
+';
+return $output;
+}
+
+function layout_rightcol_start(){
+$output = '
+ <div class="col2">
+';
+return $output;
+}
+
+function layout_rightcol_stop(){
+$output = '
+ </div>
+';
+return $output;
+}
+
+
+function layout_introblock($title="",$link="",$text=""){
+$output ='
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><a href="'.$link.'">'.$title.'</a></div>
+
+ </div>
+ <div class="intro-body">
+ <div class="top">
+ <div class="top-left"></div>
+ <div class="top-right"></div>
+ </div>
+ <div class="text-intro">
+ '.$text.'
+ </div>
+ <div class="bottom">
+ <div class="bottom-left"></div>
+ <div class="bottom-right"></div>
+
+ </div>
+ </div>
+';
+return $output;
+}
+
+function layout_defaultblock($title="",$link="",$text="",$stamp="",$poster=""){
+$output = '
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><a href="'.$link.'">'.$title.'</a></div>
+ </div>
+ <div class="intro-body">
+
+ <div class="top">
+ <div class="top-left"></div>
+ <div class="top-right"></div>
+ </div>
+ <div class="text">
+ '.$text.'
+ ';
+if ($stamp != ""){
+ $output .= '<div class="news-stamp">'.$poster.' <i>'.$stamp.'</i></div>';
+}
+ $output .='
+ </div>
+ <div class="bottom">
+
+ <div class="bottom-left"></div>
+ <div class="bottom-right"></div>
+ </div>
+ </div>
+
+';
+return $output;
+}
+
+function between ($pre, $post, &$data, $n = 1) {
+ $offset = 0;
+ for (; $n > 0; $n--) {
+ $prepos = strpos($data, $pre, $offset);
+ if ($prepos == 0) return false;
+ $prepos += strlen($pre);
+ $postpos = strpos($data, $post, $prepos);
+ if ($postpos == 0) return false;
+ $offset = $postpos + strlen($post);
+ }
+ $taglen = $postpos - $prepos;
+ return trim(substr($data, $prepos, $taglen));
+}
+
+?>
Added: traduc/trunk/slony/website/style.css
===================================================================
--- traduc/trunk/slony/website/style.css (rev 0)
+++ traduc/trunk/slony/website/style.css 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,252 @@
+body{
+ font-family: sans serif;
+ font-size: 12pt;
+ line-height: 100%;
+ margin: 8px;
+ background-color: #ffffff;
+}
+
+h1{
+ margin: 0;
+ font-size: 18pt;
+ padding-top:4px;
+ padding-bottom: 10px;
+}
+
+.header{
+ min-width: 782px;
+ margin: 0;
+ height: 108px;
+ background: url('images/header-background.png') top left repeat-x;
+ overflow: hidden;
+}
+
+.header .left{
+ margin-left: 0;
+ float: left;
+ background: url('images/header-left.png') top left;
+ background-repeat: no-repeat;
+ height: 108px;
+}
+
+.header .right{
+ float: right;
+ background: url('images/header-right.png') top right;
+ width: 206px;
+ height: 108px;
+ overflow: hidden;
+}
+
+.header .menu{
+ position: relative;
+ left: 330px;
+ top: 86px;
+ margin: 0;
+ padding: 0;
+ height: 20px;
+}
+
+.header .menu a{
+ color: #ffffff;
+ text-decoration: none;
+ font-size: 14pt;
+ font-weight: bold;
+ padding-right: 10px;
+}
+
+.header .menu a:hover{
+ color: #cccccc;
+}
+
+.header .menu a:visited{
+ color: #ffffff;
+}
+
+.content{
+ width: 100%;
+}
+
+.col1{
+ float: left;
+ width: 59%;
+}
+
+.col2{
+ float: right;
+ width: 39%;
+}
+
+.intro-header{
+ width: 100%;
+ height: 28px;
+ background: url('images/intro-header-bg.png') top left repeat-x;
+ overflow: hidden;
+ margin-top: 10px;
+ float: right;
+}
+
+.intro-header .left{
+ background: url('images/intro-header-left.png') top left no-repeat;
+ width: 4%;
+ height: 28px;
+ float: left;
+}
+
+.intro-header .right{
+ width: 96%;
+ height: 28px;
+ float: right;
+ background: url('images/intro-header-right.png') top right no-repeat;
+ overflow: hidden;
+ padding-top: 7px;
+}
+
+.intro-header .right a{
+ color: #cccccc;
+ text-decoration: none;
+ font-size: 14pt;
+ font-weight: bold;
+}
+
+.intro-header .right a:hover{
+ color: #aaaacc;
+ text-decoration: none;
+ font-size: 14pt;
+ font-weight: bold;
+}
+
+.intro-header .right a:visited{
+ color: #cccccc;
+}
+
+.intro-header input{
+ border: 1px solid #ffffff;
+ color: #ffffff;
+ background-color: #182F73;
+ margin-right: 12px;
+}
+
+.intro-header select{
+ margin-top: -1px;
+}
+
+.intro-body{
+ margin: 2px;
+ background-color: #f6f6f6;
+ margin-right: 4px;
+ float: right;
+}
+
+.intro-body .top{
+ background: url('images/intro-body-top-mid.png') top left repeat-x;
+ height: 11px;
+ width: 100%;
+ overflow: hidden;
+ float: right;
+}
+
+.intro-body .top-left, .intro-body .bottom-left{
+ height: 11px;
+ width: 10px;
+ float: left;
+}
+
+.intro-body .top-right, .intro-body .bottom-right{
+ height: 11px;
+ width: 10px;
+ float: right;
+}
+
+.intro-body .top-left{
+ background: url('images/intro-body-top-left.png') top left no-repeat;
+}
+.intro-body .top-right{
+ background: url('images/intro-body-top-right.png') top right no-repeat;
+}
+
+.intro-body .bottom{
+ background: url('images/intro-body-bottom-mid.png') top left repeat-x;
+ height: 11px;
+ width: 100%;
+ overflow: hidden;
+ float: right;
+}
+
+.intro-body .bottom-left{
+ background: url('images/intro-body-bottom-left.png') top left no-repeat;
+}
+.intro-body .bottom-right{
+ background: url('images/intro-body-bottom-right.png') top right no-repeat;
+}
+
+.intro-body .text,.intro-body .text-intro{
+ padding-left: 10px;
+ padding-right: 10px;
+ padding-bottom: 4px;
+ border-left: 1px solid black;
+ border-right: 1px solid black;
+}
+
+.text-intro p, .text p{
+ margin-top: 0;
+ padding-top: 5px;
+ margin-bottom: 0;
+ padding-bottom: 5px;
+}
+
+.intro-body .text-intro{
+ background: url('images/slon-slonik.png') bottom right no-repeat;
+ min-height: 200px;
+ padding-right: 205px;
+}
+
+.intro-body .text a, .intro-body .text-intro a{
+ color: #0D1DDF;
+ text-decoration: none;
+}
+
+.intro-body .text a:hover, .intro-body .text-intro a:hover{
+ color: #183074;
+ text-decoration: underline;
+}
+
+.intro-body .text a:visited, .intro-body .text-intro a:visited{
+ color: #0D1DDF;
+ text-decoration: none;
+}
+
+.text pre{
+ font-size:80%;
+ white-space: pre-wrap; /* css-3 */
+ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ word-wrap: break-word; /* Internet Explorer 5.5+ */
+ display: block;
+ overflow: auto;
+}
+
+.copyright{
+ width: 98%;
+ height: 40px;
+ color: #ffffff;
+ text-align: center;
+ overflow: hidden;
+ margin-right: 2%;
+}
+
+.copyright a{
+ font-size: 12pt;
+ color: #ffffff;
+ font-weight: normal;
+}
+
+.copyright a:visited{
+ color: #ffffff;
+}
+
+.news-stamp{
+ text-align: right;
+ height: 20px;
+ font-size: 80%;
+}
Added: traduc/trunk/slony/website/test.html
===================================================================
--- traduc/trunk/slony/website/test.html (rev 0)
+++ traduc/trunk/slony/website/test.html 2009-08-30 11:52:16 UTC (rev 1378)
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html lang="en">
+<head>
+<title>Slony-I</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<link rel="stylesheet" href="style.css" type="text/css" />
+<!-- Design Copyright 2007-2009 Niels Breet -->
+</head>
+
+<body>
+<div class="header">
+ <div class="left">
+ <div class="menu">
+ <a href="">Link1</a>
+ <a href="">Link2</a>
+ <a href="">Link3</a>
+ <a href="">Link4gp</a>
+ </div>
+ </div>
+ <div class="right">
+ </div>
+</div>
+
+<div class="content">
+ <div class="col1">
+
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><a href="#">Slony-I - introduction</a></div>
+ </div>
+ <div class="intro-body">
+ <div class="top">
+ <div class="top-left"></div>
+ <div class="top-right"></div>
+ </div>
+ <div class="text-intro">
+ <p><b>Slony-I</b> is a "master to multiple slaves"
+ replication system with cascading and failover.</p>
+
+ <p>The <i>big picture</i> 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.</p>
+
+ <p>Slony-I is a system for data centers and backup sites,
+ where the normal mode of operation is that all nodes are
+ available.</p>
+
+ <p>A fairly extensive "admin guide" comprising material
+ in the CVS tree may be found <a href=
+ "http://linuxdatabases.info/info/slony.html">here</a>
+ There is also a local copy <a href=
+ "adminguide/slony1-1.2.6/doc/adminguide/index.html">here</a></p>
+
+ <p>The original design document is available <a href=
+ "http://developer.postgresql.org/%7Ewieck/slony1/Slony-I-concept.pdf">
+
+ here</a>.</p>
+ </div>
+ <div class="bottom">
+ <div class="bottom-left"></div>
+ <div class="bottom-right"></div>
+ </div>
+ </div>
+
+
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><a href="">Title here</a></div>
+ </div>
+ <div class="intro-body">
+ <div class="top">
+ <div class="top-left"></div>
+ <div class="top-right"></div>
+ </div>
+ <div class="text"> bla bla bla <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ lalala lalalalgga appllaa <br />
+ asldl;<a href="">adjfggafd</a> dfjskldfs d
+ </div>
+ <div class="bottom">
+ <div class="bottom-left"></div>
+ <div class="bottom-right"></div>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div class="col2">
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><a href="">Title here</a></div>
+ </div>
+ <div class="intro-body">
+ <div class="top">
+ <div class="top-left"></div>
+ <div class="top-right"></div>
+ </div>
+ <div class="text"><p> bla bla bla</p>
+ <p>lalala lalalalgga appllaa</p>
+ <p>asldl;<a href="">adjfggafd</a> dfjskldfs d</p>
+ </div>
+ <div class="bottom">
+ <div class="bottom-left"></div>
+ <div class="bottom-right"></div>
+ </div>
+ </div>
+
+ </div>
+
+ <br clear="all">
+ <div class="footer">
+ <div class="intro-header">
+ <div class="left"></div>
+ <div class="right"><div class="copyright">Content © 2007-2009 Slony Development Group</div></div>
+ </div>
+ </div>
+</div>
+
+</body>
+</html>
Plus d'informations sur la liste de diffusion Trad