MCPcopy
hub / github.com/dgraph-io/dgraph / SetMembershipState

Method SetMembershipState

dgraph/cmd/zero/zero.go:230–256  ·  view source on GitHub ↗

SetMembershipState updates the membership state to the given one.

(state *pb.MembershipState)

Source from the content-addressed store, hash-verified

228
229// SetMembershipState updates the membership state to the given one.
230func (s *Server) SetMembershipState(state *pb.MembershipState) {
231 s.Lock()
232 defer s.Unlock()
233
234 s.state = state
235 s.nextRaftId = x.Max(s.nextRaftId, s.state.MaxRaftId+1)
236
237 if state.Zeros == nil {
238 state.Zeros = make(map[uint64]*pb.Member)
239 }
240 if state.Groups == nil {
241 state.Groups = make(map[uint32]*pb.Group)
242 }
243
244 // Create connections to all members.
245 for _, g := range state.Groups {
246 for _, m := range g.Members {
247 conn.GetPools().Connect(m.Addr, s.tlsClientConfig)
248 }
249
250 if g.Tablets == nil {
251 g.Tablets = make(map[string]*pb.Tablet)
252 }
253 }
254
255 s.nextGroup = uint32(len(state.Groups) + 1)
256}
257
258// MarshalMembershipState returns the marshaled membership state.
259func (s *Server) MarshalMembershipState() ([]byte, error) {

Callers 2

initAndStartNodeMethod · 0.80
RunMethod · 0.80

Calls 5

MaxFunction · 0.92
GetPoolsFunction · 0.92
ConnectMethod · 0.65
LockMethod · 0.45
UnlockMethod · 0.45

Tested by

no test coverage detected