-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
Labels
effort/weeksEstimated to take multiple weeksEstimated to take multiple weeksexp/wizardExtensive knowledge (implications, ramifications) requiredExtensive knowledge (implications, ramifications) requiredkind/bugA bug in existing code (including security flaws)A bug in existing code (including security flaws)need/analysisNeeds further analysis before proceedingNeeds further analysis before proceedingneed/maintainer-inputNeeds input from the current maintainer(s)Needs input from the current maintainer(s)status/blockedUnable to be worked further until needs are metUnable to be worked further until needs are mettopic/providerTopic providerTopic provider
Description
Checklist
- My issue is specific & actionable.
- I am not suggesting a protocol enhancement.
- I have searched on the issue tracker for my issue.
Description
Context
It seems that kubo/boxo is providing all newly received blocks to the DHT (source).
These blocks will not be reprovided if they don't match the reprovider strategy.
What was the rationale for this?
Proposed solutions
a) It seems reasonable to apply the reprovider strategy on newly received blocks as well. This would reduce the number of provides, and allow the (re)provider system to manage the reprovides by itself, independently from the blockstore.
b) If providing all newly received blocks is actually desirable, I suggest changing the provider interface to let the (re)provider system to provide the key once only (and not reprovide it).
Motivation
A change is required to allow the DHT SweepingReprovider to track which keys must be reprovided.
Metadata
Metadata
Assignees
Labels
effort/weeksEstimated to take multiple weeksEstimated to take multiple weeksexp/wizardExtensive knowledge (implications, ramifications) requiredExtensive knowledge (implications, ramifications) requiredkind/bugA bug in existing code (including security flaws)A bug in existing code (including security flaws)need/analysisNeeds further analysis before proceedingNeeds further analysis before proceedingneed/maintainer-inputNeeds input from the current maintainer(s)Needs input from the current maintainer(s)status/blockedUnable to be worked further until needs are metUnable to be worked further until needs are mettopic/providerTopic providerTopic provider