MCPcopy Index your code
hub / github.com/CodisLabs/codis / snapshot

Method snapshot

pkg/proxy/slots.go:31–50  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

29}
30
31func (s *Slot) snapshot() *models.Slot {
32 var m = &models.Slot{
33 Id: s.id,
34 Locked: s.lock.hold,
35
36 BackendAddr: s.backend.bc.Addr(),
37 BackendAddrGroupId: s.backend.id,
38 MigrateFrom: s.migrate.bc.Addr(),
39 MigrateFromGroupId: s.migrate.id,
40 ForwardMethod: s.method.GetId(),
41 }
42 for i := range s.replicaGroups {
43 var group []string
44 for _, bc := range s.replicaGroups[i] {
45 group = append(group, bc.Addr())
46 }
47 m.ReplicaGroups = append(m.ReplicaGroups, group)
48 }
49 return m
50}
51
52func (s *Slot) blockAndWait() {
53 if !s.lock.hold {

Callers 3

GetSlotsMethod · 0.80
GetSlotMethod · 0.80
trySwitchMasterMethod · 0.80

Calls 2

GetIdMethod · 0.65
AddrMethod · 0.45

Tested by

no test coverage detected