feat: store: BatchOpStore (GetMany
/PutMany
methods)
#97
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.
This PR introduces a
BatchOpIpldStore
that exposesGetMany
andPutMany
methods. This is for use in parallelForEach
traversal methods for go-hamt-ipld and go-amt-ipld. Actually only theGetMany
method is being used there, but aPutMany
method was added to compliment it. This PR uses theGetMany
blockstore method introduced in ipfs/boxo#492 which, in turn, relies on theTxnDatastore
wrappers introduced in ipfs/go-datastore#210.Parallel go-amt-ipld traversal work that uses this: filecoin-project/go-amt-ipld#84
Parallel go-hamt-ipld traversal work that uses this: filecoin-project/go-hamt-ipld#115
TODO:
Replace replace directives if/when dependencies are merged and released