mirror of
https://github.com/scylladb/scylladb.git
synced 2026-06-03 05:26:58 +00:00
All node operations we currently support go through similar basic flow and may add some op-specific logic around it. 1. Select the nodes to sync with (this is op specific). 2. hearbeat updater 3. send prepare req 4. perform the body of the node operation 5. send done -- on any error: send abort node_ops_ctl formalizes all those steps and makes sure errors are handled in all steps, and the error causing abort is not masked by errors in the abort processing, and is propagated upstream. Some of the printouts repeat the node operation description to remain backward compatible so not to break dtests that wait for them. Signed-off-by: Benny Halevy <bhalevy@scylladb.com>