Developing Apache Storm Applications
Also available as:
PDF

Recovery

The recovery phase is triggered for the following conditions:

  • When a topology is started for the first time.

    • If the previous transaction was not prepared successfully, a rollback message is sent across the topology to indicate that if a bolt has some prepared transactions it can be discarded.

    • If the previous transaction was prepared successfully but not committed, a commit message is sent across the topology so that the prepared transactions can be committed.

    After these steps finish, bolts are initialized with the state.

  • When a bolt fails to acknowledge the checkpoint message; for example, if a worker crashes during a transaction.

    When the worker is restarted by the supervisor, the checkpoint mechanism ensures that the bolt is initialized with its previous state. Checkpointing continues from the point where it left off.