mirror of https://github.com/milvus-io/milvus.git
Load nodes when indexservices started (#5740)
Signed-off-by: xiaocai2333 <cai.zhang@zilliz.com>pull/5779/head
parent
17b19233dc
commit
561897c3d0
|
@ -16,6 +16,7 @@ import (
|
|||
"errors"
|
||||
"math/rand"
|
||||
"strconv"
|
||||
"strings"
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
"time"
|
||||
|
@ -587,6 +588,26 @@ func (i *IndexService) assignTasksServerStart() error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, session := range sessions {
|
||||
addrs := strings.Split(session.Address, ":")
|
||||
ip := addrs[0]
|
||||
port, err := strconv.ParseInt(addrs[1], 10, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
req := &indexpb.RegisterNodeRequest{
|
||||
Address: &commonpb.Address{
|
||||
Ip: ip,
|
||||
Port: port,
|
||||
},
|
||||
NodeID: session.ServerID,
|
||||
}
|
||||
if err = i.addNode(session.ServerID, req); err != nil {
|
||||
log.Debug("IndexService", zap.Any("IndexService start find node fatal, err = ", err))
|
||||
}
|
||||
|
||||
}
|
||||
var serverIDs []int64
|
||||
for _, session := range sessions {
|
||||
serverIDs = append(serverIDs, session.ServerID)
|
||||
|
|
|
@ -13,7 +13,6 @@ package indexservice
|
|||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
|
@ -37,8 +36,8 @@ func (i *IndexService) addNode(nodeID UniqueID, req *indexpb.RegisterNodeRequest
|
|||
defer i.nodeLock.Unlock()
|
||||
|
||||
if i.nodeClients.CheckAddressExist(req.Address) {
|
||||
errMsg := "Register IndexNode fatal, address conflict with nodeID:%d 's address" + strconv.FormatInt(nodeID, 10)
|
||||
return errors.New(errMsg)
|
||||
log.Debug("IndexService", zap.Any("Node client already exist with ID:", nodeID))
|
||||
return nil
|
||||
}
|
||||
|
||||
nodeAddress := req.Address.Ip + ":" + strconv.FormatInt(req.Address.Port, 10)
|
||||
|
|
Loading…
Reference in New Issue