Task #3652
closedStory #3705: [Keep] Generalize PullList module to BlockWorkList
Rewrite PullList as a BlockManager implementation
0%
Description
Keepstore should be able to fulfill a pull list asynchronously: once a pull list has been received, send it to a goroutine for fulfillment.
The goroutine satisfies each request by trying each server in the order given, and stores the block locally exactly as if a user had delivered it with a PUT request.
If all servers for a given request fail, that request is abandoned.
Once all requests have been processed, the pull list may be abandoned. There is no need to retry failed requests.
The goroutine should check its input channel after handling each pull request. If new data is available (indicating that a new pull list has been sent by Data Manager) it should abandon the current queue and read the new pull list.
Updated by Tim Pierce over 10 years ago
- Subject changed from Fetch blocks on the pull list asynchronously to Rewrite PullList as a BlockManager implementation
Updated by Tim Pierce over 10 years ago
- Status changed from In Progress to Resolved
- Remaining (hours) set to 0.0