基于serf的数据库同步模块库
liuxiaolong
2019-08-27 940e9644d5b72c5083eacf28c65eb07154d87f67
deal EventMemberLeave
1个文件已修改
13 ■■■■ 已修改文件
agent.go 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
agent.go
@@ -210,12 +210,13 @@
        }
    case serf.MemberEvent:
        if event.EventType() == serf.EventMemberLeave {
            fmt.Println("EventMemberLeave,current Members:",ev.Members)
            fmt.Printf("event.EventType() == serf.EventMemberLeave")
            return
        }else{
            fmt.Println("MemberEvent other,current Members:",ev.Members)
            fmt.Printf("event.EventType() == serf.other")
            if ev.Members !=nil && len(ev.Members) ==1 {
                leaveMember := ev.Members[0]
                leaveSql := "delete from cluster_node where node_id='"+leaveMember.Name+"'"
                ExecuteSqlByGorm([]string{ leaveSql })
                fmt.Println("EventMemberLeave,current Members:",ev.Members)
            }
            return
        }