Commit 2ac3d888 authored by vicotor's avatar vicotor

fix bug

parent ea44f988
......@@ -70,11 +70,12 @@ func initConfig() {
func runNode() {
n := server.NewNode()
go metrics.StartMetrics()
if err := n.Start(); err != nil {
log.WithError(err).Error("run node failed")
return
}
metrics.StartMetrics()
wg := sync.WaitGroup{}
wg.Add(1)
......
......@@ -5,6 +5,7 @@ import (
"errors"
"github.com/odysseus/nodemanager/utils"
omanager "github.com/odysseus/odysseus-protocol/gen/proto/go/nodemanager/v1"
log "github.com/sirupsen/logrus"
"strings"
)
......@@ -36,9 +37,11 @@ func (n *NodeManagerService) RegisterWorker(client omanager.NodeManagerService_R
//return n.node.wm.handleNewDial(client)
uuid := utils.GetSnowflakeId()
log.WithField("uuid", uuid).Debug("new worker register")
worker, err := n.node.wm.AddNewWorker(uuid, client)
if err != nil {
log.WithField("uuid", uuid).WithError(err).Error("add new worker failed")
return err
}
return n.node.wm.manageWorker(worker)
......
......@@ -226,6 +226,7 @@ func (wm *WorkerManager) disconnect(worker *Worker) {
wm.wkRwLock.Lock()
delete(wm.workers, worker.uuid)
delete(wm.workid, worker.workerAddr)
wm.wkRwLock.Unlock()
}
func (wm *WorkerManager) manageWorker(worker *Worker) error {
......@@ -294,6 +295,7 @@ func (wm *WorkerManager) manageWorker(worker *Worker) error {
}
if time.Now().Unix()-wm.GetHeartBeat(worker.uuid) > int64(workerCheckDuration.Seconds()) {
log.WithField("worker-uuid", worker.uuid).Error("worker heartbeat expired")
close(worker.quit)
return ErrHeartBeatExpired
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment