refactor(iroh-bytes): Async bao store #2043
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Asyncify bao store traits
Asyncify almost the complete surface area of the bao store traits, to make an actor based implementation that lives on its own std::thread::Thread at least theoretically possible.
Notes & open questions
Note: There is a sync method
fn entry_status_sync
so we don't have to rewrite the document sync algorithm. It should be replaced asap since it will be not very efficient.Note2: there is 1 unrelated change: get_or_create_partial is renamed to just get_or_create, since you have no control over whether the created entry is partial. If the entry is already complete, what do you do? You return a complete entry.
Change checklist