Goal

The goal for today is to make the server persist chunks on disk. This continues from last time.

Plan

  • Start a new branch, cherry pick from the old branch what can needs to be carried over.

  • Create a new module for storing chunks as opaque blogs, with separate metadata. Refactor the client repository module to use that.

  • Change the server to provide persistency using the blob repository.

Notes

  • Created branch and cherry-picked what I want to keep from the old one.

  • Added a blob repository by stealing most of the client chunk repository code and renaming things, and some refactoring.

  • Changed the client backup repository module to use the new blob repository and did some refactoring.

  • Started changing the server to use the new blob repository, but ran into problems that I'm now too tired and hungry to figure out. Will continue from here next time.

Summary

Rebuilt the client backup repository to avoid abstractions that are unnecessary for the server and started work converting the server to use that, but didn't have time to finish.

Comments?

If you have feedback on this, please use the following fediverse thread: https://toot.liw.fi/@liw/116628489619459173.

If you'd like to fund Obnam development, see my funding page. My high level goal is described on the architecture page. What most important about backup software to you?