Disclosed is a rollback-free method for performing multi-step procedures
in the presence of possible failure. As the procedure proceeds from its
initial state through transitions to its final state, its constituent
transitions are monitored for failure. If a failure is detected, then the
procedure is "sidetracked" into a recovery coordination state. From the
recovery coordination state, the procedure is logically taken back to its
initial state and retried. In this manner, the procedure is shepherded,
without rollbacks, through its transitions until it successfully reaches
its final state. In a particular embodiment, a multi-step procedure is
developed for moving a resource from one resource server to another. The
steps of the procedure are designed so that all throughout the procedure,
both of the resource servers and a directory server are kept
synchronized. This allows client requests to proceed without interruption
even during the resource movement.
È rilevato un metodo rollback-libero per l'effettuazione delle procedure a più gradi in presenza di guasto possibile. Come la procedura continua dalla relativa iniziale dichiari con le transizioni al relativo finale dichiarano, le relative transizioni costituenti sono controllati per guasto. Se un guasto è rilevato, allora la procedura "è sviata" in una coordinazione di recupero dichiara. Dalla coordinazione di recupero dichiari, la procedura è presa logicamente di nuovo alla relativa iniziale dichiara e processato nuovamente. In questo modo, la procedura è shepherded, senza rollbacks, con le relative transizioni fino a che non raggiunga con successo il relativo finale dichiari. In un procedimento particolare, una procedura a più gradi è elaborata per lo spostamento della risorsa da un assistente delle risorse verso un altro. I punti della procedura sono progettati in moda da mantenere tutti durante la procedura, sia degli assistenti delle risorse che di un assistente dell'indice sincronizzati. Ciò permette le richieste del cliente di continuare senza interruzione persino durante il movimento delle risorse.