diff options
author | Lars Wirzenius <liw@liw.fi> | 2021-07-31 09:50:34 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2021-08-02 13:20:20 +0300 |
commit | 2694b4c5d7f240277cba83de462aa1774fae36c4 (patch) | |
tree | 2986b2351e920d2eb00ad796f14b3155fc6da448 /blog | |
parent | f86220de298e13a70d2f178a965e818bd897e939 (diff) | |
download | obnam.org-2694b4c5d7f240277cba83de462aa1774fae36c4.tar.gz |
start planning meeting
Sponsored-by: author
Diffstat (limited to 'blog')
-rw-r--r-- | blog/2021/08/01/planning.mdwn | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/blog/2021/08/01/planning.mdwn b/blog/2021/08/01/planning.mdwn new file mode 100644 index 0000000..c51048b --- /dev/null +++ b/blog/2021/08/01/planning.mdwn @@ -0,0 +1,84 @@ +[[!meta title="Iteration planning: August 2–August 15"]] +[[!tag meeting]] + +[[!toc levels=2]] + +# Assessment of the iteration that has ended + +[previous iteration]: /blog/2021/07/18/meeting + +The goal of the [previous iteration][] was: + +> Change the Obnam client to use async Rust to be more concurrent. The +> result doesn't need to make optimal use of all cores, but it needs +> to pass the test suite and needs to work. + +This was achieved, though not entirely as originally intended. The +Obnam client now uses async for all operations that only read from the +chunk server, which at this time is all operations except `obnam +backup`. That work will continue in this iteration. + +# Discussion + +## Performance + +The next step in the use of async in the Obnam client is to make +`obnam backup` us async. This should improve backup performance on +multi-CPU hosts. + +## Minimum supported Rust version + +In [[!issue 137]] Alexander asks what minimum version of Rust should +Obnam require. Please add your viewpoint to the issue if you have one, +or have experience about this from other projects. + +# Goals + +## Goal for 1.0 (not changed this iteration) + +The goal for version 1.0 is for Obnam to be an utterly boring backup +solution for Linux command line users. It should just work, be +performant, secure, and well-documented. + +It is not a goal for version 1.0 to have been ported to other +operating systems, but if there are volunteers to do that, and to +commit to supporting their port, ports will be welcome. + +Other user interfaces is likely to happen only after 1.0. + +The server component will support multiple clients in a way that +doesn’t let them see each other’s data. It is not a goal for clients +to be able to share data, even if the clients trust each other. + +## Goal for the next few iterations (not changed for this iteration) + +The goal for next few iterations is to have Obnam be performant. This +will include, at least, making the client use more concurrency so that +it can use more CPU cores to compute checksums for de-duplication. + +## Goal for this iteration (new for this iteration) + +Change the Obnam client to use async Rust for making backups. + + +# Commitments for this iteration + +Lars intends to change the `obnam backup` command to use async +([[!issue 113]]). After this is done, the client should be entirely +async. + +* [[!issue 56]] -- SQLite databases for generations have no metadata + about themselves (1h) +* [[!issue 113]] -- Client is not async (4h) +* [[!issue 118]] -- Lacks way to expand a geneneration reference + ("latest") as a generation id (1h) + - there is already a merge request for this +* [[!issue 121]] -- Release process needs review, update (1h) + - should probably make at least a trial release +* [[!issue 133]] -- Test suite assumes location of binary (1h) + +That's a total of about 8 hours, rough estimate, for Lars. + +# Meeting participants + +* Lars Wirzenius |