Guide du développeur de services de données Sun Cluster pour SE Solaris

Idempotence des méthodes

En règle générale, le gestionnaire RGM n'appelle pas successivement plus d'une fois une méthode sur la même ressource avec les mêmes arguments. Par contre, si une méthode Start échoue, le gestionnaire RGM peut appeler une méthode Stop sur une ressource même si cette dernière n'a jamais été démarrée. De même, le gestionnaire RGM peut exécuter la méthode Stop sur le démon d'une ressource, même si celui-ci s'était déjà arrêté de lui-même. Les mêmes scénarios s'appliquent aux méthodes Monitor_start et Monitor_stop.

C'est pourquoi vous devez intégrer le principe d'idempotence dans vos méthodes Stop et Monitor_stop. Les appels répétés de Stop ou Monitor_stop sur la même ressource avec les mêmes arguments fournissent les mêmes résultats qu'un appel unique.

L'idempotence se caractérise notamment par le fait que l'Arrêt et l'Arrêt_détecteur doivent revenir à 0 (succès) même si la ressource ou le détecteur sont déjà arrêtés ou qu'aucun travail n'est effectué.


Remarque –

Les méthodes Init, Fini, Boot et Update doivent également être idempotentes. Il n'est pas nécessaire qu'une méthode Démarrage soit idempotente.