MCPcopy Create free account

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

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

↓ 1 callersMethodDisconnectClientUnlocked
caller should hold cfg.mu
kvraft/config.go:239
↓ 1 callersMethodEncodeValue
(value reflect.Value)
labgob/labgob.go:37
↓ 1 callersMethodLeader
()
kvraft/config.go:325
↓ 1 callersMethodLogSize
Maximum log size across all servers
raft/config.go:660
↓ 1 callersMethodLongDelays
(yes bool)
labrpc/labrpc.go:188
↓ 1 callersMethodLongReordering
(yes bool)
labrpc/labrpc.go:181
↓ 1 callersFunctionMakeClerk
生成一个客户端
kvraft/client.go:32
↓ 1 callersFunctionMakeClerk
the tester calls MakeClerk. ctrlers[] is needed to call shardctrler.MakeClerk(). make_end(servername) turns a server name from a Config.Groups[gid]
shardkv/client.go:57
↓ 1 callersFunctionMakeCoordinator
create a Coordinator. main/mrcoordinator.go calls this function. nReduce is the number of reduce tasks to use.
mr/coordinator.go:244
↓ 1 callersFunctionNextValue
predict effect of Append(k, val) if old value is prev.
kvraft/test_test.go:134
↓ 1 callersMethodProcessKeyReady
判断能否执行客户端发来的命令
shardkv/server_apply.go:28
↓ 1 callersMethodRaft
needed by shardkv tester
shardctrler/server.go:94
↓ 1 callersMethodSaveRaftState
(state []byte)
raft/persister.go:39
↓ 1 callersMethodShutdownServer
Shutdown a server by isolating it
kvraft/config.go:255
↓ 1 callersMethodStartCtrlerserver
(i int)
shardkv/config.go:270
↓ 1 callersFunctionStartKVServer
servers[] contains the ports of the set of servers that will cooperate via Raft to form the fault-tolerant key/value service. me is the index of the
kvraft/server.go:349
↓ 1 callersFunctionStartServer
* 初始服务器 */ servers[] contains the ports of the servers in this group. me is the index of the current server in servers[]. the k/v server should sto
shardkv/server.go:181
↓ 1 callersFunctionWorker
main/mrworker.go calls this function.
mr/worker.go:32
↓ 1 callersFunctioncacheContains
(model Model, cache map[uint64][]cacheEntry, entry cacheEntry)
porcupine/checker.go:145
↓ 1 callersMethodcallPeerCleanShardData
* 处理好input shard,请求源节点清除output shard */ 发送给shard源节点,可以删除shard数据了 一般在apply command中处理好input的shard,发送给源节点删除保存的shard数据
shardkv/server_shard.go:195
↓ 1 callersFunctioncheckConcurrentAppends
check that all known appends are present in a value, and are in order for each concurrent client.
kvraft/test_test.go:161
↓ 1 callersFunctioncheckDefault
warn if the value contains non-default values, as it would if one sent an RPC but the reply struct was already modified. if the RPC reply contains de
labgob/labgob.go:122
↓ 1 callersFunctioncheckDefault1
(value reflect.Value, depth int, name string)
labgob/labgob.go:129
↓ 1 callersMethodcheckNoLeader
check that none of the connected servers thinks it is the leader.
raft/config.go:493
↓ 1 callersFunctioncheckSingle
(model Model, history []entry, computePartial bool, kill *int32)
porcupine/checker.go:179
↓ 1 callersMethodcheckTimeout
()
shardctrler/config.go:47
↓ 1 callersMethodcheckTimeout
()
shardkv/config.go:72
↓ 1 callersFunctioncheckType
(t reflect.Type)
labgob/labgob.go:72
↓ 1 callersMethodclear
(pos uint)
porcupine/bitset.go:35
↓ 1 callersMethodclone
()
porcupine/bitset.go:19
↓ 1 callersFunctioncomputeVisualizationData
(model Model, info linearizationInfo)
porcupine/visualization.go:33
↓ 1 callersFunctionconvertEntries
(events []Event)
porcupine/checker.go:108
↓ 1 callersMethoddeleteClient
(ck *Clerk)
kvraft/config.go:211
↓ 1 callersMethoddispatch
(req reqMsg)
labrpc/labrpc.go:409
↓ 1 callersMethoddoMapTask
做map任务
mr/worker.go:97
↓ 1 callersMethoddoReduceTask
做reduce任务
mr/worker.go:137
↓ 1 callersMethoddoTask
开始做任务
mr/worker.go:65
↓ 1 callersMethodequals
(b2 bitset)
porcupine/bitset.go:62
↓ 1 callersMethodfetchShard
获取指定的shard
shardkv/server_shard.go:137
↓ 1 callersMethodfetchShards
* 定时任务,请求input shard */ 定时获取shard
shardkv/server_shard.go:114
↓ 1 callersMethodgetAppendLogs
获取要向指定节点发送的日志
raft/raft_append_entries.go:136
↓ 1 callersMethodgetMergeName
reduce任务时获取要输出的文件名
mr/worker.go:92
↓ 1 callersMethodgetTask
rpc请求:请求获取任务
mr/worker.go:218
↓ 1 callersMethodhandleApplyCh
处理applych
shardctrler/server.go:384
↓ 1 callersMethodhandleApplyCh
应用每一条命令
kvraft/server.go:257
↓ 1 callersMethodhandleApplyCh
应用每一条命令
shardkv/server_apply.go:49
↓ 1 callersMethodhandleCleanShardDataCommand
处理已经迁移走的shard,即output shard
shardkv/server_apply.go:244
↓ 1 callersMethodhandleConfigCommand
处理config命令,即更新config 主要是处理meshard、inputshard、outputshard
shardkv/server_apply.go:146
↓ 1 callersMethodhandleJoinCommand
* applych处理代码 */
shardctrler/server.go:336
↓ 1 callersMethodhandleLeaveCommand
(args LeaveArgs)
shardctrler/server.go:349
↓ 1 callersMethodhandleMergeShardDataCommand
处理新的shard数据,即input shard
shardkv/server_apply.go:215
↓ 1 callersMethodhandleMoveCommand
(args MoveArgs)
shardctrler/server.go:367
↓ 1 callersMethodhandleOpCommand
处理get、put、append命令
shardkv/server_apply.go:89
↓ 1 callersFunctionihash
use ihash(key) % NReduce to choose the reduce task number for each KeyValue emitted by Map.
mr/worker.go:80
↓ 1 callersFunctionlength
(n *node)
porcupine/checker.go:83
↓ 1 callersFunctionlift
(entry *node)
porcupine/checker.go:159
↓ 1 callersFunctionloadPlugin
load the application Map and Reduce functions from a plugin file, e.g. ../mrapps/wc.so
main/mrsequential.go:93
↓ 1 callersFunctionloadPlugin
load the application Map and Reduce functions from a plugin file, e.g. ../mrapps/wc.so
main/mrworker.go:34
↓ 1 callersFunctionmakeEntries
(history []Operation)
porcupine/checker.go:48
↓ 1 callersFunctionmakeLinkedEntries
(entries []entry)
porcupine/checker.go:121
↓ 1 callersFunctionmakeSeed
()
kvraft/config.go:26
↓ 1 callersFunctionmakeSeed
()
raft/config.go:33
↓ 1 callersFunctionmakeSeed
()
shardkv/config.go:27
↓ 1 callersMethodmake_partition
Partition servers into 2 groups and put current leader in minority
kvraft/config.go:339
↓ 1 callersFunctionnewBitset
data layout: bits 0-63 are in data[0], the next are in data[1], etc.
porcupine/bitset.go:10
↓ 1 callersFunctionnparallel
(phase string)
mrapps/mtiming.go:19
↓ 1 callersFunctionnparallel
(phase string)
mrapps/rtiming.go:17
↓ 1 callersFunctionpartitioner
repartition the servers periodically
kvraft/test_test.go:184
↓ 1 callersMethodpopcnt
()
porcupine/bitset.go:46
↓ 1 callersMethodprocessReq
(req reqMsg)
labrpc/labrpc.go:221
↓ 1 callersMethodpullConfig
* 定时任务 */
shardkv/server.go:103
↓ 1 callersFunctionrandom_handles
Randomize server handles
shardctrler/config.go:24
↓ 1 callersFunctionrandom_handles
Randomize server handles
kvraft/config.go:34
↓ 1 callersMethodreadEndnameInfo
(endname interface{})
labrpc/labrpc.go:195
↓ 1 callersMethodreadPersist
restore previously persisted state. 读取持久化数据
raft/raft.go:204
↓ 1 callersMethodregister
example function to show how to make an RPC call to the coordinator. the RPC argument and reply types are defined in rpc.go. func CallExample() {
mr/worker.go:206
↓ 1 callersMethodremoveCh
(reqId int64)
shardctrler/server.go:79
↓ 1 callersMethodremoveCh
(reqId int64)
shardkv/server_op.go:25
↓ 1 callersFunctionrenumber
(events []Event)
porcupine/checker.go:92
↓ 1 callersMethodresetAppendEntriesTimerZero
(peerId int)
raft/raft_append_entries.go:31
↓ 1 callersMethodrun
()
mr/worker.go:48
↓ 1 callersFunctionrun_client
a client runs the function f and then signals it is done
kvraft/test_test.go:107
↓ 1 callersMethodsaveSnapshot
保存快照
kvraft/server.go:190
↓ 1 callersMethodschedule
定时更新状态
mr/coordinator.go:138
↓ 1 callersMethodsendAppendEntries
发送端发送数据
raft/raft_append_entries.go:190
↓ 1 callersMethodsendAppendEntriesToPeer
(peerId int)
raft/raft_append_entries.go:218
↓ 1 callersMethodsendInstallSnapshotToPeer
向指定节点发送快照
raft/raft_snapshot.go:74
↓ 1 callersMethodsendRequestVote
example code to send a RequestVote RPC to a server. server is the index of the target server in rf.peers[]. expects RPC arguments in args. fills in *
raft/raft_vote.go:111
↓ 1 callersMethodserver
an example RPC handler. the RPC argument and reply types are defined in rpc.go. func (c *Coordinator) Example(args *ExampleArgs, reply *ExampleRepl
mr/coordinator.go:214
↓ 1 callersMethodsetlongreordering
(longrel bool)
raft/config.go:426
↓ 1 callersMethodshardclerk
()
shardkv/config.go:292
↓ 1 callersMethodstartApplyLogs
处理要应用的日志,快照的命令比较特殊,不在这里提交
raft/raft.go:375
↓ 1 callersMethodstartElection
()
raft/raft_vote.go:142
↓ 1 callersMethodticker
The ticker go routine starts a new election if this peer hasn't received heartsbeats recently.
raft/raft.go:411
↓ 1 callersMethodticker
()
shardkv/server.go:140
↓ 1 callersMethodtryCommitLog
尝试去提交日志 会依次判断,可以提交多个,但不能有间断
raft/raft_append_entries.go:161
↓ 1 callersFunctionunlift
(entry *node)
porcupine/checker.go:169
↓ 1 callersFunctionusage
()
main/pbc.go:25
MethodAppend
(key string, value string)
kvraft/client.go:158
MethodAppendEntries
接收端处理rpc 主要进行三个处理: 1. 判断任期 2. 判断是否接收数据,success:数据全部接受,或者根本就没有数据 3. 判断是否提交数据
raft/raft_append_entries.go:66
← previousnext →201–300 of 474, ranked by callers