ErrorHandling » History » Version 3

Version 2 (J. Moringen, 06/19/2011 04:53 AM) → Version 3/10 (J. Moringen, 06/19/2011 04:57 AM)

h1. Error Handling

h2. Sources of Runtime Errors

* Client-supplied event handlers
* Connectors
** When receiving notifications
** When decoding notifications
** When sending notifications
* Converters
** When converting domain-object -> wire-data
** When converting wire-data -> domain-object


h2. Error Handling Locations

* In Connectors (via client-supplied policy)
** Can handle Connector errors
** Can handle Converter errors
* In Processors (via client-supplied policy)
** Can handle errors in client-supplied event handlers
* In callbacks to client code
** Can handle Connector errors
** Can handle Converter errors
** Can handle errors in client-supplied event handlers

h2. Error Transport Mechanisms

* Stack unwinding
** Only applicable for pull-path
** Can transport Connector errors
** Can transport Converter errors
* Callback invocation from local error handling policy
** Can handle Connector errors
** Can handle Converter errors
** Can handle errors in client-supplied event handlers

h2. Error Handling Policies

* Ignore the error and continue
* Log the error and continue
* Terminate the whole process (i.e. @exit(1)@)