Fri Sep 29 08:37:04 PDT 2006
- Previous message: [Slony1-general] TRUNCATE
- Next message: [Slony1-general] error during slonik script
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
After getting slony to run succesfully on one server with simply two
local databases as master and slave, the other one appears to be more of
a challenge.
This is my slonik-invoking shell script:
---
#!/bin/sh
# Location of pgsql and Slony-I binaries
PGBIN=/usr/local/pgsql/bin
# Name of our cluster
CLUSTER=tksync
# Master DB
MASTERDBNAME=syncm
# Slave DB
SLAVEDBNAME=syncs
# Master password
MPASSWORD=xxxxxx
# Slave pass
SPASSWORD=xxxxxx
# Primary host
MASTERHOST="127.0.0.1"
SLAVEHOST="127.0.0.1"
# user
REPLICATIONUSER=slony
PATH=$PGBIN:$PATH
slonik <<_EOF_
# Define the namespace the replication system uses
cluster name = $CLUSTER;
#--
# admin conninfo's are used by slonik to connect to the nodes one for each
# node on each side of the cluster, the syntax is that of PQconnectdb in
# the C-API
# --
node 1 admin conninfo = 'dbname=$MASTERDBNAME host=$MASTERHOST
user=$REPLICATIONUSER password=$MPASSWORD';
node 2 admin conninfo = 'dbname=$SLAVEDBNAME host=$SLAVEHOST
user=$REPLICATIONUSER password=$SPASSWORD';
#--
# init the first node. Its id MUST be 1. This creates the schema
# _$CLUSTER containing all replication system specific database
# objects.
#--
init cluster ( id=1, comment = 'Master Node');
#--
# Because the history table does not have a primary key or other unique
# constraint that could be used to identify a row, we need to add one.
# The following command adds a bigint column named
# _Slony-I_$CLUSTER_rowID to the table. It will have a default value
# of nextval('_$CLUSTER.s1_rowid_seq'), and have UNIQUE and NOT NULL
# constraints applied. All existing rows will be initialized with a
# number
#--
# table add key (node id = 1, fully qualified name = 'public.poeppie');
#--
# Slony-I organizes tables into sets. The smallest unit a node can
# subscribe is a set. The following commands create one set containing
# all 4 pgbench tables. The master or origin of the set is node 1.
#--
create set (id=1, origin=1, comment='All synctest tables');
set add table (set id=1, origin=1, id=1, fully qualified name =
'public.poeppie', comment='poeppie');
# set add table (set id=1, origin=1, id=2, fully qualified name =
'public.branches', comment='branches table');
# set add table (set id=1, origin=1, id=3, fully qualified name =
'public.tellers', comment='tellers table');
# set add table (set id=1, origin=1, id=4, fully qualified name =
'public.history', comment='history table', key = serial);
# set add table (set id=1, origin=1, id=4, fully qualified name =
'public.history', comment='history table', key = serial);
#--
# Create the second node (the slave) tell the 2 nodes how to connect to
# each other and how they should listen for events.
#--
store node (id=2, comment = 'Slave node');
store path (server = 1, client = 2, conninfo='dbname=$MASTERDBNAME
host=$MASTERHOST user=$REPLICATIONUSER password=$MPASSWORD');
store path (server = 2, client = 1, conninfo='dbname=$SLAVEDBNAME
host=$SLAVEHOST user=$REPLICATIONUSER password=$SPASSWORD');
store listen (origin=1, provider = 1, receiver =2);
store listen (origin=2, provider = 2, receiver =1);
_EOF_
---
This is identical to the variant which worked perfectly on another
server. And I can login to both master and slave databases on the host
with the user/pass in the script.
But when I try to run it:
---
user at host ~/slony$ ./mkSlonyConfig.sh
<stdin>:18: loading of file /usr/local/pgsql/share//xxid.v73.sql:
PGRES_FATAL_ERROR ERROR: current transaction is aborted, queries
ignored until end of transaction block
ERROR: current transaction is aborted, queries ignored until end of
transaction block
<stdin>:18: ERROR: no admin conninfo for node 134584768
---
A crucial difference might be that the first server ran postgresql 8.1
and the second 7.3 (7.3.2 to be exact). Also, the second was compiled
from source.
What am I doing wrong?
- Previous message: [Slony1-general] TRUNCATE
- Next message: [Slony1-general] error during slonik script
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Slony1-general mailing list