Skip to content
This repository has been archived by the owner on Aug 28, 2021. It is now read-only.

Sync should read "batches" of chunks at each level using ReadManyValues #3182

Closed
ghost opened this issue Feb 11, 2017 · 0 comments
Closed

Sync should read "batches" of chunks at each level using ReadManyValues #3182

ghost opened this issue Feb 11, 2017 · 0 comments

Comments

@ghost
Copy link

ghost commented Feb 11, 2017

So as to maximize read perf from nbs (by maximizing usage of chunk locality)

@ghost ghost added P0 Sync labels Feb 11, 2017
@ghost ghost mentioned this issue Feb 11, 2017
cmasone-attic added a commit to cmasone-attic/noms that referenced this issue May 22, 2017
In an NBS world, bulk 'has' checks are waaaay cheaper than they used
to be. In light of this, we can toss out the complex logic we were
using in Pull() -- which basically existed for no reason other than to
avoid doing 'has' checks. Now, the code basically just descends down a
tree of chunks breadth-first, using HasMany() at each level to figure
out which chunks are not yet in the sink all at once, and GetMany() to
pull them from the source in bulk.

Fixes attic-labs#3182, Towards attic-labs#3384
cmasone-attic added a commit to cmasone-attic/noms that referenced this issue May 22, 2017
In an NBS world, bulk 'has' checks are waaaay cheaper than they used
to be. In light of this, we can toss out the complex logic we were
using in Pull() -- which basically existed for no reason other than to
avoid doing 'has' checks. Now, the code basically just descends down a
tree of chunks breadth-first, using HasMany() at each level to figure
out which chunks are not yet in the sink all at once, and GetMany() to
pull them from the source in bulk.

Fixes attic-labs#3182, Towards attic-labs#3384
cmasone-attic added a commit that referenced this issue May 22, 2017
In an NBS world, bulk 'has' checks are waaaay cheaper than they used
to be. In light of this, we can toss out the complex logic we were
using in Pull() -- which basically existed for no reason other than to
avoid doing 'has' checks. Now, the code basically just descends down a
tree of chunks breadth-first, using HasMany() at each level to figure
out which chunks are not yet in the sink all at once, and GetMany() to
pull them from the source in bulk.

Fixes #3182, Towards #3384
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

0 participants