This commit is contained in:
Frans Kaashoek 2025-04-07 19:39:55 -04:00
parent d21b9ffe74
commit fa6877b02d
4 changed files with 7 additions and 34 deletions

View File

@ -2,7 +2,6 @@ package shardgrp
import (
"6.5840/kvsrv1/rpc"
"6.5840/shardkv1/shardcfg"
"6.5840/tester1"

View File

@ -67,7 +67,7 @@ func TestStaticOneShardGroup5A(t *testing.T) {
// disconnect raft leader of shardgrp and check that keys are
// still available
ts.disconnectClntFromLeader(ck.(*kvtest.TestClerk).Clnt, shardcfg.Gid1)
ts.disconnectClntFromLeader(shardcfg.Gid1)
for i := 0; i < n; i++ {
ts.CheckGet(ck, ka[i], va[i], rpc.Tversion(1)) // check the puts

View File

@ -178,25 +178,12 @@ func (ts *Test) leaveGroups(sck *shardctrler.ShardCtrler, gids []tester.Tgid) bo
return true
}
func (ts *Test) disconnectRaftLeader(gid tester.Tgid) (int, string) {
_, l := rsm.Leader(ts.Config, gid)
g := ts.Group(gid)
ln := g.SrvName(l)
g.DisconnectAll(l)
return l, ln
}
func (ts *Test) reconnectOldLeader(gid tester.Tgid, l int) {
g := ts.Group(gid)
g.ConnectOne(l)
}
func (ts *Test) disconnectClntFromLeader(clnt *tester.Clnt, gid tester.Tgid) int {
l, ln := ts.disconnectRaftLeader(gid)
p := ts.Group(gid).AllowServersExcept(l)
srvs := ts.Group(gid).SrvNamesTo(p)
clnt.Disconnect(ln)
clnt.ConnectTo(srvs)
func (ts *Test) disconnectClntFromLeader(gid tester.Tgid) int {
ok, l := rsm.Leader(ts.Config, gid)
if !ok {
log.Fatalf("Leader failed")
}
ts.Group(gid).ShutdownServer(l)
return l
}

View File

@ -299,19 +299,6 @@ func (sg *ServerGrp) MakePartition(l int) ([]int, []int) {
return p1, p2
}
func (sg *ServerGrp) AllowServersExcept(l int) []int {
n := len(sg.srvs) - 1
p := make([]int, n)
j := 0
for i, _ := range sg.srvs {
if i != l {
p[j] = i
j++
}
}
return p
}
func (sg *ServerGrp) Partition(p1 []int, p2 []int) {
//log.Printf("partition servers into: %v %v\n", p1, p2)
for i := 0; i < len(p1); i++ {