Recovery database
The system engine uses the recovery database to manage information about messages that the engine is currently processing. These messages can be automatically recovered if the system crashes. As a message enters the system, it is assigned a unique message ID and copied to the recovery database.
Then, after each stage of processing, a new version of the message replaces the existing one. In this way, the recovery database always has the most current version. After a message has been completely processed by the engine, it is removed from the recovery database.