diff --git a/docs/2-handbook/swarm/archive.md b/docs/2-handbook/swarm/archive.md index 5019d3a99..8c352208c 100644 --- a/docs/2-handbook/swarm/archive.md +++ b/docs/2-handbook/swarm/archive.md @@ -130,9 +130,15 @@ restore fails. Once a week (`deploy.archive.checkSchedule`, default `weekly`) the archive host runs `restic check` on every repository. It checks the repository's structure in full and reads a random `deploy.archive.checkSubset` of its data (default `5%`), so repeated weekly runs cover a repository without -any one run reading all of it. The check runs on the archive host because the -repositories are local there, so it reads no data over the network and needs no -credential beyond the passwords the prune already reads. +any one run reading all of it. The check runs on the archive host because it +already holds every repository and the passwords, so it needs no credential +beyond the ones the prune reads. + +With local storage the check reads the repositories from the host's disk. +With `deploy.archive.backend = "s3"` it reads each repository's structure and +its subset from the bucket through rclone every week, which costs bandwidth and +requests on your S3 service. `deploy.archive.checkSubset` is the lever: lower +it to read less. The check and the prune share one lock and never run on a repository together; whichever starts second waits. A run that fails for an agent logs