As an indication to how long a reindex will take, the steps that the reindex algorithm makes are:
- Cache the last seen WAL index for the tree
- Copy over hashes of filtered data to the newly created merkle tree
- Scan all data in storage
- Build a new tree based on this data
- Replay WALs from the cached last seen index (from step 1) to the latest WAL
- Lock tree
- Replay WALs from the end of the previous replay to the latest WAL
- Diff new tree and existing tree, replace any page that differ
- Flush all dirty pages of the tree to disk
- Unlock tree
In summery, up until step 6 Vault will continue to serve requests so it's only for the syncing part to other clusters where there will be a service interruption.