UpdateMembershipState contacts zero for an update on membership state.
(ctx context.Context)
| 273 | |
| 274 | // UpdateMembershipState contacts zero for an update on membership state. |
| 275 | func UpdateMembershipState(ctx context.Context) error { |
| 276 | g := groups() |
| 277 | p := g.Leader(0) |
| 278 | if p == nil { |
| 279 | return errors.Errorf("don't have the address of any dgraph zero leader") |
| 280 | } |
| 281 | |
| 282 | c := pb.NewZeroClient(p.Get()) |
| 283 | state, err := c.Connect(ctx, &pb.Member{ClusterInfoOnly: true}) |
| 284 | if err != nil { |
| 285 | return err |
| 286 | } |
| 287 | g.applyState(g.Node.Id, state.GetState()) |
| 288 | return nil |
| 289 | } |
| 290 | |
| 291 | func (g *groupi) applyState(myId uint64, state *pb.MembershipState) { |
| 292 | x.AssertTrue(state != nil) |
no test coverage detected