[#607] object/search: Make client constructor to work with group address

Make Object Search service to work with `AddressGroup` instead of `Address`
in order to support multiple addresses of the storage node.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
Leonard Lyubich 2021-06-22 15:19:30 +03:00 committed by Leonard Lyubich
parent ad14df07f6
commit d0e48c949b
9 changed files with 54 additions and 28 deletions

View file

@ -117,16 +117,14 @@ func (exec *execCtx) generateTraverser(cid *cid.ID) (*placement.Traverser, bool)
}
}
func (exec execCtx) remoteClient(node network.Address) (searchClient, bool) {
log := exec.log.With(zap.Stringer("node", node))
func (exec execCtx) remoteClient(node network.AddressGroup) (searchClient, bool) {
c, err := exec.svc.clientConstructor.get(node)
switch {
default:
exec.status = statusUndefined
exec.err = err
log.Debug("could not construct remote node client")
exec.log.Debug("could not construct remote node client")
case err == nil:
return c, true
}