kevin kempter kevin at kevinkempterllc.com
Fri Jun 13 15:44:46 PDT 2008
Hi list;

I've run this:

1) I created the db's on both servers, created the replication user,  
did a dump from the master & restore to the slave, etc...

2) ran this script: (the slony.dg.env contains all the env variables)
#!/bin/bash

. slony.dg.env



slonik <<_EOF_

cluster name = $CLUSTERNAME;

node 1 admin conninfo = 'dbname=$MASTERDBNAME host=$MASTERHOST port= 
$MASTERPORT user=$REPUSER password=Blue.moon3';
node 2 admin conninfo = 'dbname=$SLAVEDBNAME host=$SLAVEHOST port= 
$SLAVEPORT user=$REPUSER password=Blue.moon3';

init cluster ( id=1, comment = 'Master Node');


create set ( id=1, origin=1, comment = 'PA REPLICATION SET' );

set add table ( set id=1, origin=1, id=1, fully qualified name =  
'cagold.address');
set add table ( set id=1, origin=1, id=2, fully qualified name =  
'cagold.address_history');



store node (id=2, comment = 'Slave Node 1');

store path (server = 1, client = 2, conninfo='dbname=$MASTERDBNAME  
host=$MASTERHOST port=$MASTERPORT user=$REPUSER password=Blue.moon3');
store path (server = 2, client = 1, conninfo='dbname=$SLAVEDBNAME host= 
$SLAVEHOST port=$SLAVEPORT user=$REPUSER password=Blue.moon3');


store listen (origin=1, provider = 1, receiver =2);
store listen (origin=2, provider = 2, receiver =1);

_EOF_


3) this gives me this error:
<stdin>:13: PGRES_FATAL_ERROR select  
"_ca_cluster".determineIdxnameUnique('cagold.address_history', NULL);   
- ERROR:  Slony-I: table "cagold"."address_history" has no primary key




4) so I alter the script like this:
#!/bin/bash

. slony.dg.env



slonik <<_EOF_

cluster name = $CLUSTERNAME;

node 1 admin conninfo = 'dbname=$MASTERDBNAME host=$MASTERHOST port= 
$MASTERPORT user=$REPUSER password=Blue.moon3';
node 2 admin conninfo = 'dbname=$SLAVEDBNAME host=$SLAVEHOST port= 
$SLAVEPORT user=$REPUSER password=Blue.moon3';

init cluster ( id=1, comment = 'Master Node');

table add key (node id = 1, fully qualified name =  
'cagold.address_history');


create set ( id=1, origin=1, comment = 'PA REPLICATION SET' );

set add table ( set id=1, origin=1, id=1, fully qualified name =  
'cagold.address');
set add table ( set id=1, origin=1, id=2, fully qualified name =  
'cagold.address_history');



store node (id=2, comment = 'Slave Node 1');

store path (server = 1, client = 2, conninfo='dbname=$MASTERDBNAME  
host=$MASTERHOST port=$MASTERPORT user=$REPUSER password=Blue.moon3');
store path (server = 2, client = 1, conninfo='dbname=$SLAVEDBNAME host= 
$SLAVEHOST port=$SLAVEPORT user=$REPUSER password=Blue.moon3');


store listen (origin=1, provider = 1, receiver =2);
store listen (origin=2, provider = 2, receiver =1);

_EOF_


5) I reset everything, and re-run and I get the same error:

<stdin>:15: PGRES_FATAL_ERROR select  
"_ca_cluster".determineIdxnameUnique('cagold.address_history', NULL);   
- ERROR:  Slony-I: table "cagold"."address_history" has no primary key

to "reset" I did the following:

a) dropped (with cascade) the underscore schema named after the  
replication cluster in the master
b) dropped the slave db
c) re-setup the slave
d) re-ran the above script



Any thoughts ?


Thanks in advance...



More information about the Slony1-general mailing list