Sun Cluster 3.1 10/03 Entwicklerhandbuch Datendienste

Idempotenz für Methoden

Im Allgemeinen ruft RGM keine Methode mehr als einmal nacheinander für die gleiche Ressource mit den gleichen Argumenten auf. Wenn jedoch eine Start-Methode fehlschlägt, könnte RGM eine Stop-Methode für eine Ressource aufrufen, obwohl diese Ressource gar nicht gestartet wurde. Ebenso könnte ein Ressourcen-Dämon von selbst ausfallen und RGM dennoch die Stop-Methode aufrufen. Die gleichen Möglichkeiten gelten für die Methoden Monitor_start und Monitor_stop.

Aus diesen Gründen müssen Sie Idempotenz in Ihre Stop- und Monitor_stop-Methoden einbauen. Wiederholte Aufrufe von Stop oder Monitor_stop für die gleiche Ressource mit den gleichen Parametern erzielen dann das gleiche Ergebnis wie ein einziger Aufruf.

Eine Auswirkung der Idempotenz ist, dass Stop und Monitor_stop 0 (Erfolg) zurückgeben müssen, auch wenn die Ressource bzw. der Monitor bereits gestoppt sind und keine Aufgabe ausgeführt wird.


Hinweis –

Die Methoden Init, Fini, Boot und Update müssen ebenfalls idempotent sein. Eine Start-Methode muss nicht idempotent sein.