Carlos Alarcon carlos.alarcon at tyven.com
Thu Nov 6 09:50:58 PST 2008
Hi,

I am having the following when traying to do a failover and drop node in a 2
nodes 3 sets setup:

 =


[root at vox-asterisk02 ~]# ./promote.sh

<stdin>:6: NOTICE:  failedNode: set 1 has no other direct receivers - move
now

<stdin>:6: NOTICE:  failedNode: set 2 has no other direct receivers - move
now

<stdin>:6: NOTICE:  failedNode: set 3 has no other direct receivers - move
now

<stdin>:6: PGRES_FATAL_ERROR select
"_monkey_cluster".failedNode2(1,2,1,'45','46');  - ERROR:  INSERT has more
expressions than target columns

CONTEXT:  SQL statement "INSERT INTO "_monkey_cluster".sl_event (ev_origin,
ev_seqno, ev_timestamp, ev_snapshot, ev_type, ev_data1, ev_data2, ev_data3,
ev_data4) values ( $1 ,
"pg_catalog".nextval('"_monkey_cluster".sl_event_seq'), CURRENT_TIMESTAMP,
'0', '0', '0:0:', 'ACCEPT_SET',  $2 ::text,  $3 ::text,  $1 ::text,  $4
::text)"

PL/pgSQL function "failoverset_int" line 35 at SQL statement

SQL statement "SELECT  "_monkey_cluster".failoverSet_int( $1 ,  $2 ,  $3 ,
$4 )"

PL/pgSQL function "failednode2" line 39 at PERFORM

<stdin>:6: PGRES_FATAL_ERROR select
"_monkey_cluster".failedNode2(1,2,2,'45','47');  - ERROR:  current
transaction is aborted, commands ignored until end of transaction block

<stdin>:6: PGRES_FATAL_ERROR select
"_monkey_cluster".failedNode2(1,2,3,'45','48');  - ERROR:  current
transaction is aborted, commands ignored until end of transaction block

 =


Slony version: 2.0.0. RC1, postgresql-8.3.3

 =


 =


The cluster setup is the following:

#!/bin/sh

export PATH=3D$PATH:/usr/local/pgsql/bin/

CLUSTER1=3Dmonkey_cluster

DB1=3Dpickmonkey

DB2=3Dpickmonkey2

 =


H1=3D192.168.10.73

H2=3D192.168.10.73

U=3Dpostgres

PASSWORD=3Dpostgres

 =


slonik <<_EOF_

cluster name=3D$CLUSTER1;

node 1 admin conninfo=3D'dbname=3D$DB1 host=3D$H1 user=3D$U password=3D$PAS=
SWORD';

node 2 admin conninfo=3D'dbname=3D$DB2 host=3D$H2 user=3D$U password=3D$PAS=
SWORD';

 =


init cluster (id=3D1, comment=3D'Production');

 =


#TABLE ORDER DATA

create set (id=3D1, origin=3D1, comment=3D'order table');

set add table (set id=3D1, origin=3D1, id=3D1, full qualified
name=3D'public.order_data', comment=3D'Table Order Data');

set add sequence (set id=3D1, origin=3D1, id=3D1, full qualified
name=3D'public.assrt_order_data_seq', comment=3D'Sequence
assrt_order_data_seq');

 =


#TABLE TRANSFER_MISSED_FILES

create set (id=3D2, origin=3D1, comment=3D'Transfer Missed Files table');

set add table (set id=3D2, origin=3D1, id=3D2, full qualified
name=3D'public.transfer_missed_files', comment=3D'Table transfer_missed_fil=
es');

set add sequence (set id=3D2, origin=3D1, id=3D2, full qualified
name=3D'public.assrt_transfer_files_seq', comment=3D'Sequence
assrt_transfer_files_seq');

 =


#BIG GROUP OF TABLES WITH FKs

create set (id=3D3, origin=3D1, comment=3D'The rest of tables');

set add table (set id=3D3, origin=3D1, id=3D3, full qualified
name=3D'public.address', comment=3D'Table address');

set add table (set id=3D3, origin=3D1, id=3D4, full qualified
name=3D'public.tel_number', comment=3D'Table tel_number');

set add table (set id=3D3, origin=3D1, id=3D5, full qualified
name=3D'public.country', comment=3D'Table country');

set add table (set id=3D3, origin=3D1, id=3D6, full qualified
name=3D'public.customer', comment=3D'Table customer');

set add table (set id=3D3, origin=3D1, id=3D7, full qualified
name=3D'public.zip_code', comment=3D'Table zip_code');

set add table (set id=3D3, origin=3D1, id=3D8, full qualified
name=3D'public.holiday', comment=3D'Table holiday');

set add table (set id=3D3, origin=3D1, id=3D9, full qualified name=3D'publi=
c.depot',
comment=3D'Table depot');

set add table (set id=3D3, origin=3D1, id=3D10, full qualified
name=3D'public.contact_centre', comment=3D'Table contact_centre');

 =


set add sequence (set id=3D3, origin=3D1, id=3D3, full qualified
name=3D'public.assrt_address_seq', comment=3D'Sequence assrt_address_seq');

set add sequence (set id=3D3, origin=3D1, id=3D4, full qualified
name=3D'public.assrt_tel_number_seq', comment=3D'Sequence
assrt_tel_number_seq');

set add sequence (set id=3D3, origin=3D1, id=3D5, full qualified
name=3D'public.assrt_country_seq', comment=3D'Sequence assrt_country_seq');

set add sequence (set id=3D3, origin=3D1, id=3D6, full qualified
name=3D'public.assrt_customer_seq', comment=3D'Sequence assrt_customer_seq'=
);

set add sequence (set id=3D3, origin=3D1, id=3D7, full qualified
name=3D'public.assrt_zip_code_seq', comment=3D'Sequence assrt_zip_code_seq'=
);

set add sequence (set id=3D3, origin=3D1, id=3D8, full qualified
name=3D'public.assrt_holiday_seq', comment=3D'Sequence assrt_holiday_seq');

set add sequence (set id=3D3, origin=3D1, id=3D9, full qualified
name=3D'public.assrt_depot_seq', comment=3D'Sequence assrt_depot_seq');

set add sequence (set id=3D3, origin=3D1, id=3D10, full qualified
name=3D'public.assrt_contact_centre_seq', comment=3D'Sequence
assrt_contact_centre_seq');

 =


store node (id=3D2, comment=3D'Backup', EVENT NODE=3D1);

store path (server=3D1, client=3D2, conninfo=3D'dbname=3D$DB1 host=3D$H1 us=
er=3D$U
password=3D$PASSWORD');

store path (server=3D2, client=3D1, conninfo=3D'dbname=3D$DB2 host=3D$H2 us=
er=3D$U
password=3D$PASSWORD');

store listen (origin=3D1, provider=3D1, receiver=3D2);

store listen (origin=3D2, provider=3D2, receiver=3D1);

_EOF_

 =


 =


the subscribe script:

#!/bin/sh

export PATH=3D$PATH:/usr/local/pgsql/bin/

CLUSTER1=3Dmonkey_cluster

DB1=3Dpickmonkey

DB2=3Dpickmonkey2

 =


H1=3D192.168.10.73

H2=3D192.168.10.73

U=3Dpostgres

PASSWORD=3Dpostgres

 =


 =


slonik <<_EOF_

 =


cluster name =3D $CLUSTER1;

 =


node 1 admin conninfo =3D 'dbname=3D$DB1 host=3D$H1 user=3D$U password=3D$P=
ASSWORD';

node 2 admin conninfo =3D 'dbname=3D$DB2 host=3D$H2 user=3D$U password=3D$P=
ASSWORD';

 =


subscribe set (id =3D 1, provider =3D 1, receiver =3D 2, forward =3D yes);

subscribe set (id =3D 2, provider =3D 1, receiver =3D 2, forward =3D yes);

subscribe set (id =3D 3, provider =3D 1, receiver =3D 2, forward =3D yes);

_EOF_

 =


and to promote:

 =


#!/bin/bash

#

#promote.sh

 =


export PATH=3D$PATH:/usr/local/pgsql/bin/

CLUSTER1=3Dmonkey_cluster

DB1=3Dpickmonkey

DB2=3Dpickmonkey2

 =


H1=3D192.168.10.73

H2=3D192.168.10.73

U=3Dpostgres

PASSWORD=3Dpostgres

 =


 =


 =


su - postgres -c /usr/local/pgsql/bin/slonik <<_EOF_

cluster name =3D $CLUSTER1;

 =


node 1 admin conninfo =3D 'dbname=3D$DB1 host=3D$H1 user=3D$U password=3D$P=
ASSWORD';

node 2 admin conninfo =3D 'dbname=3D$DB2 host=3D$H2 user=3D$U password=3D$P=
ASSWORD';

 =


failover (id =3D 1, backup node =3D 2);

drop node (id =3D 1, event node =3D 2);

_EOF_

 =


Any idea in what may be wrong?

 =


 =


 =


 =


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.slony.info/pipermail/slony1-general/attachments/20081106/=
321b14c8/attachment-0001.htm


More information about the Slony1-general mailing list