feat(bitswap) loop over all provided keys
License: MIT Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Brian Tiger Chow committed
Nov 20, 2014 at 18:25 UTC
f6cb4ab9a2ddf06411d1f2d2e9b1858d3d732fd9
1 file changed
+5
-11
exchange/bitswap/bitswap.go
+5
-11
@@ -182,19 +182,13 @@ func (bs *bitswap) run(ctx context.Context) {
182
}
183
}
184
case ks := <-bs.batchRequests:
185
- // TODO: implement batching on len(ks) > X for some X
186
- if len(ks) == 0 {
187
- log.Warning("Received batch request for zero blocks")
188
- continue
189
- }
185
for _, k := range ks {
186
bs.wantlist.Add(k)
192
- }
193
- providers := bs.routing.FindProvidersAsync(ctx, ks[0], maxProvidersPerRequest)
194
-
195
- err := bs.sendWantListTo(ctx, providers)
196
- if err != nil {
197
- log.Errorf("error sending wantlist: %s", err)
187
+ providers := bs.routing.FindProvidersAsync(ctx, k, maxProvidersPerRequest)
188
+ err := bs.sendWantListTo(ctx, providers)
189
+ if err != nil {
190
+ log.Errorf("error sending wantlist: %s", err)
191
+ }
192
}
193
case <-ctx.Done():
194
return