MCPcopy
hub / github.com/cubefs/cubefs / TestAddMetaReplica

Function TestAddMetaReplica

master/api_service_test.go:1037–1060  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1035}
1036
1037func TestAddMetaReplica(t *testing.T) {
1038 maxPartitionID := commonVol.maxMetaPartitionID()
1039 partition := commonVol.MetaPartitions[maxPartitionID]
1040 if partition == nil {
1041 t.Error("no meta partition")
1042 return
1043 }
1044 func() {
1045 mockServerLock.Lock()
1046 defer mockServerLock.Unlock()
1047 mockMetaServers = append(mockMetaServers, addMetaServer(mms8Addr, testZone3))
1048 }()
1049 server.cluster.checkMetaNodeHeartbeat()
1050 time.Sleep(2 * time.Second)
1051 reqURL := fmt.Sprintf("%v%v?id=%v&addr=%v", hostAddr, proto.AdminAddMetaReplica, partition.PartitionID, mms8Addr)
1052 process(reqURL, t)
1053 partition.RLock()
1054 if !contains(partition.Hosts, mms8Addr) {
1055 t.Errorf("hosts[%v] should contains dsAddr[%v]", partition.Hosts, mms8Addr)
1056 partition.RUnlock()
1057 return
1058 }
1059 partition.RUnlock()
1060}
1061
1062func TestRemoveMetaReplica(t *testing.T) {
1063 maxPartitionID := commonVol.maxMetaPartitionID()

Callers

nothing calls this directly

Calls 11

addMetaServerFunction · 0.85
maxMetaPartitionIDMethod · 0.80
LockMethod · 0.80
RLockMethod · 0.80
RUnlockMethod · 0.80
processFunction · 0.70
containsFunction · 0.70
ErrorMethod · 0.65
ErrorfMethod · 0.65
UnlockMethod · 0.45

Tested by

no test coverage detected