Skip to content

Store layout

Agents upload objects in archives. Each archive carries its own index of the objects it holds, so the store can be read without any database.

Operation Does Runs
sweep finalises idle archives and ends sessions whose lease ran out maintain, server schedule
compact merges small archives into larger ones maintain, server schedule
gc rewrites archives holding dead objects weekly, see Garbage collection
scrub / repair rehashes every object / rewrites archives holding corrupt ones by hand

maintain builds presence filters from the commits of a set, or of the whole store. Agents receive them and use them to skip asking the store about content it already holds.

With --at-rest-key, a local, gcs:// or s3:// store seals each archive where it is stored. This is independent of the store key. goback key at-rest --rotate adds a new primary key. Earlier keys still open what they sealed.