MCPcopy Create free account

hub / github.com/1345414527/MIT6.824-2022 / functions

Functions474 in github.com/1345414527/MIT6.824-2022

↓ 4 callersFunctionMakeClerk
(servers []*labrpc.ClientEnd)
shardctrler/client.go:25
↓ 4 callersMethodSaveStateAndSnapshot
Save both Raft state and K/V snapshot as a single atomic action, to help avoid them getting out of sync.
raft/persister.go:59
↓ 4 callersMethodbytesTotal
()
raft/config.go:422
↓ 4 callersMethodconnectUnlocked
attach server i to servers listed in to caller must hold cfg.mu
shardctrler/config.go:80
↓ 4 callersMethodconnectUnlocked
attach server i to servers listed in to caller must hold cfg.mu
kvraft/config.go:107
↓ 4 callersMethoddisconnectUnlocked
detach server i from the servers listed in from caller must hold cfg.mu
shardctrler/config.go:104
↓ 4 callersMethoddisconnectUnlocked
detach server i from the servers listed in from caller must hold cfg.mu
kvraft/config.go:131
↓ 4 callersMethodgetPersistData
获取持久化的数据
raft/raft.go:169
↓ 4 callersMethodlock
自定义锁
shardctrler/server.go:51
↓ 4 callersMethodlock
自定义锁
kvraft/server.go:59
↓ 4 callersMethodmakeClient
Create a clerk with clerk specific server names. Give it connections to all of the servers, but for now enable only connections to servers in to[].
shardctrler/config.go:164
↓ 4 callersFunctionnrand
()
shardkv/client.go:33
↓ 4 callersMethodservername
shard server name for labrpc. i'th server of group gid.
shardkv/config.go:114
↓ 4 callersMethodwait
wait for at least n servers to commit. but don't wait forever.
raft/config.go:533
↓ 4 callersMethodwaitCommand
(clientId int64, commandId int64, method string, args interface{})
shardctrler/server.go:150
↓ 3 callersMethodCondInstallSnapshot
A service wants to switch to snapshot. Only do so if Raft hasn't have more recent info since it communicate the snapshot on applyCh. 其实CondInstallS
raft/raft.go:249
↓ 3 callersMethodGet
fetch the current value for a key. returns "" if the key does not exist. keeps trying forever in the face of all other errors. You will have to modif
shardkv/client.go:72
↓ 3 callersMethodGetTotalBytes
()
labrpc/labrpc.go:381
↓ 3 callersMethodLeader
()
shardctrler/config.go:299
↓ 3 callersMethodLogSize
Maximum log size across all servers
kvraft/config.go:82
↓ 3 callersMethodNewOneTask
创建一个task
mr/coordinator.go:67
↓ 3 callersMethodSnapshot
the service says it has created a snapshot that has all info up to and including index. this means the service no longer needs the log through (and in
raft/raft.go:286
↓ 3 callersFunctionVisualize
(model Model, info linearizationInfo, output io.Writer)
porcupine/visualization.go:89
↓ 3 callersFunctionbitsetIndex
(pos uint)
porcupine/bitset.go:25
↓ 3 callersFunctioncall
send an RPC request to the coordinator, wait for the response. usually returns true. returns false if something goes wrong.
mr/worker.go:248
↓ 3 callersFunctioncheckEvents
(model Model, history []Event, verbose bool, timeout time.Duration)
porcupine/checker.go:355
↓ 3 callersFunctioncheckOperations
(model Model, history []Operation, verbose bool, timeout time.Duration)
porcupine/checker.go:365
↓ 3 callersMethodchecklogs
check that no server's log is too big.
shardkv/config.go:91
↓ 3 callersFunctionfillDefault
(model Model)
porcupine/checker.go:255
↓ 3 callersFunctioninsertBefore
(n *node, mark *node)
porcupine/checker.go:70
↓ 3 callersMethodnotifyWaitCommand
(reqId int64, err Err, value string)
shardkv/server_apply.go:7
↓ 3 callersMethodop
()
kvraft/config.go:406
↓ 3 callersMethodremoveCh
(reqId int64)
kvraft/server.go:75
↓ 3 callersMethodrpcCount
(server int)
raft/config.go:410
↓ 3 callersMethodsetunreliable
(unrel bool)
raft/config.go:418
↓ 2 callersFunctionAppend
(cfg *config, ck *Clerk, key string, value string, log *OpLog, cli int)
kvraft/test_test.go:83
↓ 2 callersFunctionCheckOperationsVerbose
timeout = 0 means no timeout if this operation times out, then a false positive is possible
porcupine/porcupine.go:19
↓ 2 callersMethodConnectAll
()
shardctrler/config.go:138
↓ 2 callersMethodConnectClient
(ck *Clerk, to []int)
kvraft/config.go:232
↓ 2 callersMethodConnectClientUnlocked
caller should hold cfg.mu
shardctrler/config.go:196
↓ 2 callersMethodConnectClientUnlocked
caller should hold cfg.mu
kvraft/config.go:223
↓ 2 callersFunctionGenericTestSpeed
Check that ops are committed fast enough, better than 1 per heartbeat interval
kvraft/test_test.go:392
↓ 2 callersMethodGetTotalCount
()
labrpc/labrpc.go:376
↓ 2 callersMethodKill
the tester calls Kill() when a ShardCtrler instance won't be needed again. you are not required to do anything in Kill(), but it might be convenient
shardctrler/server.go:73
↓ 2 callersMethodKill
the tester calls Kill() when a KVServer instance won't be needed again. for your convenience, we supply code to set rf.dead (without needing a lock),
kvraft/server.go:177
↓ 2 callersMethodKill
the tester calls Kill() when a ShardKV instance won't be needed again. you are not required to do anything in Kill(), but it might be convenient to (
shardkv/server.go:92
↓ 2 callersMethodMove
(shard int, gid int)
shardctrler/client.go:92
↓ 2 callersMethodOutputDataExist
判断是否存在指定config和指定shardId的output shard
shardkv/server_shard.go:9
↓ 2 callersMethodPut
(key string, value string)
kvraft/client.go:155
↓ 2 callersMethodPutAppend
shared by Put and Append. you can send an RPC with code like this: ok := ck.servers[i].Call("KVServer.PutAppend", &args, &reply) the types of args
kvraft/client.go:105
↓ 2 callersMethodPutAppend
shared by Put and Append. You will have to modify this function.
shardkv/client.go:109
↓ 2 callersMethodReadRaftState
()
raft/persister.go:45
↓ 2 callersMethodShutdownServer
Shutdown a server by isolating it
shardctrler/config.go:228
↓ 2 callersMethodSnapshotSize
Maximum snapshot size across all servers
kvraft/config.go:94
↓ 2 callersFunctionStartServer
* 初始化代码 */ servers[] contains the ports of the set of servers that will cooperate via Raft to form the fault-tolerant shardctrler service. me is the
shardctrler/server.go:449
↓ 2 callersMethodStartServer
If restart servers, first call ShutdownServer
shardctrler/config.go:260
↓ 2 callersMethodadjustConfig
* 配置调整代码 */ 配置的调整 我们的策略是尽量不改变当前的配置
shardctrler/server.go:194
↓ 2 callersFunctioncheckClntAppends
check that for a specific client all known appends are present in a value, and in order
kvraft/test_test.go:140
↓ 2 callersMethodcheckFinished
()
raft/config.go:348
↓ 2 callersMethodcheckLogs
(i int, m ApplyMsg)
raft/config.go:141
↓ 2 callersFunctioncheckParallel
(model Model, history [][]entry, computeInfo bool, timeout time.Duration)
porcupine/checker.go:274
↓ 2 callersMethodcheckTerms
check that everyone agrees on the term. 检验每一个节点的term是否一致,并返回
raft/config.go:474
↓ 2 callersMethodcheckTimeout
()
kvraft/config.go:62
↓ 2 callersMethodcheckTimeout
()
raft/config.go:341
↓ 2 callersFunctioncheck_same_config
(t *testing.T, c1 Config, c2 Config)
shardctrler/test_test.go:56
↓ 2 callersMethodcleanup
()
shardctrler/config.go:54
↓ 2 callersFunctioncoordinatorSock
Cook up a unique-ish UNIX-domain socket name in /var/tmp, for the coordinator. Can't use the current directory since Athena AFS doesn't support UNIX-d
mr/rpc.go:59
↓ 2 callersMethodgetElectionTimeout
()
raft/raft.go:127
↓ 2 callersMethodgetReduceName
map任务时获取要输出的文件名
mr/worker.go:87
↓ 2 callersMethodgetValueByKey
(key string)
kvraft/server.go:237
↓ 2 callersMethodgetValueByKey
(key string)
shardkv/server_apply.go:16
↓ 2 callersMethodhash
()
porcupine/bitset.go:54
↓ 2 callersMethodingestSnap
returns "" or error string
raft/config.go:187
↓ 2 callersFunctioninternalChurn
(t *testing.T, unreliable bool)
raft/test_test.go:963
↓ 2 callersMethodisOutOfArgsAppendEntries
判断当前raft的日志记录是否超过发送过来的日志记录
raft/raft_append_entries.go:43
↓ 2 callersMethodisServerDead
(endname interface{}, servername interface{}, server *Server)
labrpc/labrpc.go:211
↓ 2 callersMethodjoinm
(gis []int)
shardkv/config.go:310
↓ 2 callersMethodleavem
(gis []int)
shardkv/config.go:328
↓ 2 callersFunctionmake_config
(t *testing.T, n int, unreliable bool)
shardctrler/config.go:334
↓ 2 callersFunctionmaybeCrash
()
mrapps/nocrash.go:17
↓ 2 callersFunctionmaybeCrash
()
mrapps/crash.go:20
↓ 2 callersMethodnotifyWaitCommand
(reqId int64, err Err, conf Config)
shardctrler/server.go:374
↓ 2 callersMethodnotifyWaitCommand
(reqId int64, err Err, value string)
kvraft/server.go:247
↓ 2 callersFunctionrandstring
(n int)
shardctrler/config.go:16
↓ 2 callersFunctionrandstring
(n int)
kvraft/config.go:19
↓ 2 callersFunctionrandstring
(n int)
raft/config.go:26
↓ 2 callersMethodreadPersist
读取快照 两处调用:初始化阶段;收到Snapshot命令,即接收了leader的Snapshot
kvraft/server.go:210
↓ 2 callersMethodreadPersist
读取快照 两处调用:初始化阶段;收到Snapshot命令,即接收了leader的Snapshot
shardkv/server_snapshot.go:35
↓ 2 callersMethodresetAppendEntriesTimer
重置单个timer
raft/raft_append_entries.go:37
↓ 2 callersMethodresetAppendEntriesTimersZero
立马发送
raft/raft_append_entries.go:24
↓ 2 callersMethodrpcTotal
()
kvraft/config.go:392
↓ 2 callersMethodrpcTotal
()
raft/config.go:414
↓ 2 callersMethodscanTaskState
扫描任务状态并适当更新
mr/coordinator.go:86
↓ 2 callersMethodset
(pos uint)
porcupine/bitset.go:29
↓ 2 callersFunctionspawn_clients_and_wait
spawn ncli clients and wait until they are all done
kvraft/test_test.go:117
↓ 2 callersFunctionusage
()
main/diskvd.go:25
↓ 2 callersFunctionusage
()
main/lockc.go:11
↓ 2 callersMethodwaitCmd
调用start向raft请求命令
kvraft/server.go:82
↓ 2 callersMethodwaitCommand
(clientId int64, commandId int64, method, key, value string, configNum int)
shardkv/server_op.go:50
↓ 1 callersMethodDisconnectClientUnlocked
caller should hold cfg.mu
shardctrler/config.go:212
← previousnext →101–200 of 474, ranked by callers