diff --git a/exchange/bitswap/bitswap.go b/exchange/bitswap/bitswap.go index a87c72631eca..731b4d135c84 100644 --- a/exchange/bitswap/bitswap.go +++ b/exchange/bitswap/bitswap.go @@ -179,6 +179,7 @@ func (bs *bitswap) sendWantListTo(ctx context.Context, peers <-chan peer.PeerInf for peerToQuery := range peers { log.Event(ctx, "PeerToQuery", peerToQuery.ID) wg.Add(1) + bs.network.Peerstore().AddAddresses(peerToQuery.ID, peerToQuery.Addrs) go func(p peer.ID) { defer wg.Done() if err := bs.send(ctx, p, message); err != nil { @@ -211,8 +212,8 @@ func (bs *bitswap) sendWantlistToProviders(ctx context.Context, wantlist *wantli defer wg.Done() child, _ := context.WithTimeout(ctx, providerRequestTimeout) providers := bs.routing.FindProvidersAsync(child, k, maxProvidersPerRequest) - for prov := range providers { + bs.network.Peerstore().AddAddresses(prov.ID, prov.Addrs) if set.TryAdd(prov.ID) { //Do once per peer bs.send(ctx, prov.ID, message) } @@ -264,7 +265,6 @@ func (bs *bitswap) clientWorker(parent context.Context) { // newer bitswap strategies. child, _ := context.WithTimeout(ctx, providerRequestTimeout) providers := bs.routing.FindProvidersAsync(child, ks[0], maxProvidersPerRequest) - err := bs.sendWantListTo(ctx, providers) if err != nil { log.Errorf("error sending wantlist: %s", err)