[Infrastructures] state machines

Wesley Craig wes@umich.edu
Tue, 19 Sep 2006 09:44:12 -0400


Stated so generally, I think I can come up with counter examples.   
For instance, if you make a full disk image before pushing out a  
change, you can in fact "undo" the change, by restoring the backup.

:wes

On 18 Sep 2006, at 19:03, Steve Traugott wrote:
>     A machine can be described as a directed graph.  The disk states
>     are nodes, the changes are edges.  You can't go backwards along an
>     edge -- there can be no "undo".  You might theoretically be able
>     to reach a prior node by some other path, but there is no general
>     solution for generating the code that implements those reverse
>     edges.  Each edge transition -- in any direction -- must be
>     individually tested to verify that is has reached the desired
>     node.  In the case of normal transistions, this is known as
>     "testing before production rollout".  In the case of reverse
>     transitions, the resulting disk state must inspected to ensure
>     that it is indeed the prior state, and not some new node in the
>     directed graph.  Creating the transition code for each reverse
>     edge, and performing the inspection to ensure that the code
>     re-creates the prior state, will always be more expensive than
>     just hitting the big "reset" button and rebuilding the machine
>     back to the starting state, then replaying the forward edges until
>     the desired node is reached.