PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

NOTICE failedNode sous Slony-I

Technique - général | NOTICE failedNode sous Slony-I

Par LeeRoy le 31/07/2007 - 18:30

Bonjour,

J'ai créée un cluster de BD redondantes gràce à Slony-I. Il est constitué de deux nodes.
Ca, ça marche.
J'ai un programme de teste, qui envoie des requètes d'insertion dans la base. Si une requète n'arrive pas à joindre la base de données, le programme utilise slonik et déclenche un failover.
Le problème est que le script se bloque sur la commande de failover et affiche le message suivant:
NOTICE: failedNode: set 1 has no other direct receivers - move now

Si je comprends bien le message, il est effectivement justifié puisque qu'il n'y a qu'un node de secours, mais pourquoi bloque il le script?

Ce qui est d'autant plus étrange, c'est qu'une fois le script tué, lorsque mon programme tente à nouveau un failover, celui-ci se passe correctement et sans message.
Et l'étrange par dessus l'étrange, c'est que mon second node est accessible dès le premier failover.

Si quelqu'un peut m'expliquer la nature du message, que j'interpète peut-être mal, je lui en serais extrèmement reconnaissant, étant donné que le documentation est des plus succinte:
If the backup node is the only direct subscriber, then life is a bit simplified... No need to reshape any subscriptions!

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Etrange

SAS/ = 1 Août, 2007 - 12:52

Bonjour,

Je viens de tester la procédure ici. Cela fonctionne.

Le script rend la main, et la bascule est effective. Cela dit, la procédure n'est pas forcément instantanée.

Quelles sont les versions de PG, de Slony ? Quel est le script exact que vous effectuez ?

Librement,
Stéphane Schildknecht
dalibo
PostgreSQLFr


J'utilise PostgreSQL 8.2.4 on

LeeRoy/ = 2 Août, 2007 - 11:16

J'utilise PostgreSQL 8.2.4 on i686-pc-mingw32 et slony-I-1.2.10

Je n'ai pas toujours eu le problème. La cause est peut-être à chercher dans mon retour après failover.
Je fais un 'drop schema "_slony_exampleII" cascade;' sur mes deux bases, puis je relance mon script de création du cluster.

Le failover se fait pas l'appelle au script suivant:

cluster name = slony_exampleII;

node 1 admin conninfo = 'dbname=testReplication host=192.168.1.70 user=XX password=XX';
node 2 admin conninfo = 'dbname=testReplication host=192.168.1.71 user=XX password=XX';

echo 'debut du failover';

failover(id = 1 , BACKUP NODE = 2);
echo 'failover OK';

drop node(id= 1, event node = 2);
echo 'drop node OK';


Un nouvel élément. Lorsque

LeeRoy/ = 2 Août, 2007 - 17:42

Un nouvel élément.
Lorsque le script de failover bloque sur le message (NOTICE: failedNode: set 1 has no other direct receivers - move now)
le slon lancé sur le serveur de secour s'arrète avec le message:
INFO localListenThread: got restart notification

Un fois relancé le script reprend.


© PostgreSQLFr, tous droits réservés.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.