Work in progress
We are changing the implementation of the Non-distributed Recovery Feature. Documentation will be up to date soon.
This feature bundles all available recovery techniques for the non-distributed version of Odysseus. Among other things it contains techniques for a Gap Recovery (at-most once), a Rollback Recovery (at-least-once) and a Precise Recovery (exactly once).
All three classes of recovery techniques ensure that Odysseus continues the data stream processing after a restart, but they differ in their completeness and correctness guarantees. To achieve completeness and correctness respectively, the rollback and the precise recovery need additional plug-ins: an external application, Backup of Data Streams (BaDaSt), a meta attribute, Trust, and Checkpointing.
Additionally, there are other recovery techniques available with completeness and correctness guarantees between the three mentioned classes: