From daac628c64069633787588372dea22499ac35396 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期三, 18 十月 2023 16:52:56 +0800 Subject: [PATCH] 修复集群功能 --- system-service/serf/handler.go | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/system-service/serf/handler.go b/system-service/serf/handler.go index c5546db..c9689a3 100644 --- a/system-service/serf/handler.go +++ b/system-service/serf/handler.go @@ -4,6 +4,7 @@ "basic.com/valib/logger.git" "basic.com/valib/serf.git/serf" "encoding/json" + "fmt" "github.com/golang/protobuf/proto" "github.com/hashicorp/memberlist" "github.com/satori/go.uuid" @@ -239,7 +240,7 @@ func HandleEventMemberLeave(ev serf.MemberEvent) { if ev.Members != nil && len(ev.Members) == 1 { leaveMember := ev.Members[0] - leaveSql := "update cluster_node set isDelete=1 where node_id='" + leaveMember.Name + "'" + leaveSql := "update cluster_node set isDelete=1,drift_state='' where node_id='" + leaveMember.Name + "'" flag, e := executeSqlByGorm([]string{leaveSql}) logger.Info("EventMemberLeave,current Members:", ev.Members) @@ -260,8 +261,13 @@ func HandleEventMemberJoin(ev serf.MemberEvent) { if ev.Members != nil && len(ev.Members) == 1 { - leaveMember := ev.Members[0] - joinSql := "update cluster_node set isDelete=0 where node_id='" + leaveMember.Name + "'" + joinMember := ev.Members[0] + + timeUnix := time.Now().Unix() + fmtTimeStr := time.Unix(timeUnix, 0).Format("2006-01-02 15:04:05") + + //joinSql := "update cluster_node set isDelete=0 where node_id='" + leaveMember.Name + "'" + joinSql := fmt.Sprintf("update cluster_node set isDelete=0,drift_state='',node_ip='%s',create_time='%s' where node_id='%s'", joinMember.Addr.String()+":"+strconv.Itoa(int(joinMember.Port)), fmtTimeStr, joinMember.Name) flag, e := executeSqlByGorm([]string{joinSql}) logger.Info("EventMemberJoin,current Members:", ev.Members) @@ -276,6 +282,6 @@ if e != nil { logErr = e.Error() } - executeSqlByGorm([]string{"insert into sql_sync_his(`id`,`lTime`,`createTime`,`sql`,`from`,`result`,`err`) values ('" + uuid.NewV4().String() + "','" + logLT + "','" + logT + "','" + logSql + "','" + leaveMember.Name + "'," + logResult + ",'" + logErr + "')"}) + executeSqlByGorm([]string{"insert into sql_sync_his(`id`,`lTime`,`createTime`,`sql`,`from`,`result`,`err`) values ('" + uuid.NewV4().String() + "','" + logLT + "','" + logT + "','" + logSql + "','" + joinMember.Name + "'," + logResult + ",'" + logErr + "')"}) } } -- Gitblit v1.8.0