db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%T Exception Handling and Checkpointing in CSP
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%A Mads Ohm Larsen, Brian Vinter
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%E Peter H. Welch, Frederick R. M. Barnes, Kevin Chalmers, Jan Bækgaard Pedersen, Adam T. Sampson
%B Communicating Process Architectures 2012
%X This paper describes work in progress. It presents a new way
of looking
at some of the basics of CSP. The primary
contributions is exception
handling and checkpointing of
processes and the ability to roll back to
a known
checkpoint. Channels are discussed as communication
events
which is monitored by a supervisor process. The
supervisor process is
also used to formalise poison and
retire events. Exception handling and
checkpointing are
used as means of recovering from an catastrophe.
The
supervisor process is central to checkpointing and
recovery as well.
Three different kind of exception handling
is discussed: fail\-stop,
retire\-like fail\-stop, and check
pointing. Fail\-stop works like poison,
and retire\-like
fail\-stop works like retire. Checkpointing works
by
telling the supervisor process to roll back both
participants in a
communication event, to a state
immediately after their last successful
communication. Only
fail\-stop exceptions have been implemented in PyCSP
to this
point.