-
Notifications
You must be signed in to change notification settings - Fork 8
Seanaye/persistence trait #86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
7cd707a
to
62848da
Compare
0f4e60f
to
663ba56
Compare
663ba56
to
5d30c2a
Compare
5d30c2a
to
8e1644d
Compare
8e1644d
to
ef8c7f0
Compare
Thanks for the PR. I will have to check if the storage abstraction adds performance costs for the very important local/sync case. It might be that the best way to deal with this use case is to have a separate store implementation that allows plugging in an async storage backend, since the local store is very performance critical. The way I usually test this is by using sendme and then syncing a directory structure that contains a lot of tiny files, like the linux kernel. Warning: I got some important deadlines the next weeks and won't be able to look into this until after may 18. |
Thanks for taking a look, I will test with sendme. Is there a specific command you use to benchmark the impl? I still have a few commits to push |
Description
This MR introduces a
Persistence
trait which abstracts away the persistence layer forCompleted
bao files. This means that you can BYO persistence impl to the current fs store (e.g. S3).Breaking Changes
The external facing breaking changes are mostly around the "asyncification" of certain trait methods. I will update this section in more detail later.
Notes & open questions
This is still a draft MR I am just looking for feedback on the general approach before I clean things up a bit more. e.g. There are some places that can panic right now
Change checklist