## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

- Auto
- Light
- Dark

# Algorand Specifications

The following pseudocode describes how a node running in Follower Node mode is gracefully shutdown.

The shutdown procedure ensures that all services are stopped and resources are properly deallocated. This prevents data corruption and ensures the node stops in a stable and predictable state.

* * *

Algorithm4: Follower Node Shutdown

1: function FollowerNode.Stop()  
2: Network Cleanup  
3: node.Network.StopHandlers()  
4: if ¬node.nodeConfig.StopNetwork then  
5: node.Network.Stop()  
6: endif  
7: Service Shutdown  
8: if ∃node.CatchpointCatchupService then  
9: node.CatchpointCatchupService.Stop()  
10: else  
11: Follower Services Only  
12: node.CatchupService.Stop()  
13: node.BlockService.Stop()  
14: endif  
15: Resource Cleanup  
16: node.Catchup.BlockAuthenticator.Stop()  
17: node.CryptoPool.lowPriority.Stop()  
18: node.CryptoPool.Stop()  
19: end function

* * *

> Important  
> **IMPLEMENTATION:**  
> Follower node shutdown [reference implementation](https://github.com/algorand/go-algorand/blob/df0613a04432494d0f437433dd1efd02481db838/node/follower_node.go#L211-L229).
