Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/1345414527/MIT6.824-2022
/ functions
Functions
474 in github.com/1345414527/MIT6.824-2022
⨍
Functions
474
◇
Types & classes
105
↓ 4 callers
Function
MakeClerk
(servers []*labrpc.ClientEnd)
shardctrler/client.go:25
↓ 4 callers
Method
SaveStateAndSnapshot
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 callers
Method
bytesTotal
()
raft/config.go:422
↓ 4 callers
Method
connectUnlocked
attach server i to servers listed in to caller must hold cfg.mu
shardctrler/config.go:80
↓ 4 callers
Method
connectUnlocked
attach server i to servers listed in to caller must hold cfg.mu
kvraft/config.go:107
↓ 4 callers
Method
disconnectUnlocked
detach server i from the servers listed in from caller must hold cfg.mu
shardctrler/config.go:104
↓ 4 callers
Method
disconnectUnlocked
detach server i from the servers listed in from caller must hold cfg.mu
kvraft/config.go:131
↓ 4 callers
Method
getPersistData
获取持久化的数据
raft/raft.go:169
↓ 4 callers
Method
lock
自定义锁
shardctrler/server.go:51
↓ 4 callers
Method
lock
自定义锁
kvraft/server.go:59
↓ 4 callers
Method
makeClient
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 callers
Function
nrand
()
shardkv/client.go:33
↓ 4 callers
Method
servername
shard server name for labrpc. i'th server of group gid.
shardkv/config.go:114
↓ 4 callers
Method
wait
wait for at least n servers to commit. but don't wait forever.
raft/config.go:533
↓ 4 callers
Method
waitCommand
(clientId int64, commandId int64, method string, args interface{})
shardctrler/server.go:150
↓ 3 callers
Method
CondInstallSnapshot
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 callers
Method
Get
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 callers
Method
GetTotalBytes
()
labrpc/labrpc.go:381
↓ 3 callers
Method
Leader
()
shardctrler/config.go:299
↓ 3 callers
Method
LogSize
Maximum log size across all servers
kvraft/config.go:82
↓ 3 callers
Method
NewOneTask
创建一个task
mr/coordinator.go:67
↓ 3 callers
Method
Snapshot
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 callers
Function
Visualize
(model Model, info linearizationInfo, output io.Writer)
porcupine/visualization.go:89
↓ 3 callers
Function
bitsetIndex
(pos uint)
porcupine/bitset.go:25
↓ 3 callers
Function
call
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 callers
Function
checkEvents
(model Model, history []Event, verbose bool, timeout time.Duration)
porcupine/checker.go:355
↓ 3 callers
Function
checkOperations
(model Model, history []Operation, verbose bool, timeout time.Duration)
porcupine/checker.go:365
↓ 3 callers
Method
checklogs
check that no server's log is too big.
shardkv/config.go:91
↓ 3 callers
Function
fillDefault
(model Model)
porcupine/checker.go:255
↓ 3 callers
Function
insertBefore
(n *node, mark *node)
porcupine/checker.go:70
↓ 3 callers
Method
notifyWaitCommand
(reqId int64, err Err, value string)
shardkv/server_apply.go:7
↓ 3 callers
Method
op
()
kvraft/config.go:406
↓ 3 callers
Method
removeCh
(reqId int64)
kvraft/server.go:75
↓ 3 callers
Method
rpcCount
(server int)
raft/config.go:410
↓ 3 callers
Method
setunreliable
(unrel bool)
raft/config.go:418
↓ 2 callers
Function
Append
(cfg *config, ck *Clerk, key string, value string, log *OpLog, cli int)
kvraft/test_test.go:83
↓ 2 callers
Function
CheckOperationsVerbose
timeout = 0 means no timeout if this operation times out, then a false positive is possible
porcupine/porcupine.go:19
↓ 2 callers
Method
ConnectAll
()
shardctrler/config.go:138
↓ 2 callers
Method
ConnectClient
(ck *Clerk, to []int)
kvraft/config.go:232
↓ 2 callers
Method
ConnectClientUnlocked
caller should hold cfg.mu
shardctrler/config.go:196
↓ 2 callers
Method
ConnectClientUnlocked
caller should hold cfg.mu
kvraft/config.go:223
↓ 2 callers
Function
GenericTestSpeed
Check that ops are committed fast enough, better than 1 per heartbeat interval
kvraft/test_test.go:392
↓ 2 callers
Method
GetTotalCount
()
labrpc/labrpc.go:376
↓ 2 callers
Method
Kill
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 callers
Method
Kill
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 callers
Method
Kill
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 callers
Method
Move
(shard int, gid int)
shardctrler/client.go:92
↓ 2 callers
Method
OutputDataExist
判断是否存在指定config和指定shardId的output shard
shardkv/server_shard.go:9
↓ 2 callers
Method
Put
(key string, value string)
kvraft/client.go:155
↓ 2 callers
Method
PutAppend
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 callers
Method
PutAppend
shared by Put and Append. You will have to modify this function.
shardkv/client.go:109
↓ 2 callers
Method
ReadRaftState
()
raft/persister.go:45
↓ 2 callers
Method
ShutdownServer
Shutdown a server by isolating it
shardctrler/config.go:228
↓ 2 callers
Method
SnapshotSize
Maximum snapshot size across all servers
kvraft/config.go:94
↓ 2 callers
Function
StartServer
* 初始化代码 */ 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 callers
Method
StartServer
If restart servers, first call ShutdownServer
shardctrler/config.go:260
↓ 2 callers
Method
adjustConfig
* 配置调整代码 */ 配置的调整 我们的策略是尽量不改变当前的配置
shardctrler/server.go:194
↓ 2 callers
Function
checkClntAppends
check that for a specific client all known appends are present in a value, and in order
kvraft/test_test.go:140
↓ 2 callers
Method
checkFinished
()
raft/config.go:348
↓ 2 callers
Method
checkLogs
(i int, m ApplyMsg)
raft/config.go:141
↓ 2 callers
Function
checkParallel
(model Model, history [][]entry, computeInfo bool, timeout time.Duration)
porcupine/checker.go:274
↓ 2 callers
Method
checkTerms
check that everyone agrees on the term. 检验每一个节点的term是否一致,并返回
raft/config.go:474
↓ 2 callers
Method
checkTimeout
()
kvraft/config.go:62
↓ 2 callers
Method
checkTimeout
()
raft/config.go:341
↓ 2 callers
Function
check_same_config
(t *testing.T, c1 Config, c2 Config)
shardctrler/test_test.go:56
↓ 2 callers
Method
cleanup
()
shardctrler/config.go:54
↓ 2 callers
Function
coordinatorSock
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 callers
Method
getElectionTimeout
()
raft/raft.go:127
↓ 2 callers
Method
getReduceName
map任务时获取要输出的文件名
mr/worker.go:87
↓ 2 callers
Method
getValueByKey
(key string)
kvraft/server.go:237
↓ 2 callers
Method
getValueByKey
(key string)
shardkv/server_apply.go:16
↓ 2 callers
Method
hash
()
porcupine/bitset.go:54
↓ 2 callers
Method
ingestSnap
returns "" or error string
raft/config.go:187
↓ 2 callers
Function
internalChurn
(t *testing.T, unreliable bool)
raft/test_test.go:963
↓ 2 callers
Method
isOutOfArgsAppendEntries
判断当前raft的日志记录是否超过发送过来的日志记录
raft/raft_append_entries.go:43
↓ 2 callers
Method
isServerDead
(endname interface{}, servername interface{}, server *Server)
labrpc/labrpc.go:211
↓ 2 callers
Method
joinm
(gis []int)
shardkv/config.go:310
↓ 2 callers
Method
leavem
(gis []int)
shardkv/config.go:328
↓ 2 callers
Function
make_config
(t *testing.T, n int, unreliable bool)
shardctrler/config.go:334
↓ 2 callers
Function
maybeCrash
()
mrapps/nocrash.go:17
↓ 2 callers
Function
maybeCrash
()
mrapps/crash.go:20
↓ 2 callers
Method
notifyWaitCommand
(reqId int64, err Err, conf Config)
shardctrler/server.go:374
↓ 2 callers
Method
notifyWaitCommand
(reqId int64, err Err, value string)
kvraft/server.go:247
↓ 2 callers
Function
randstring
(n int)
shardctrler/config.go:16
↓ 2 callers
Function
randstring
(n int)
kvraft/config.go:19
↓ 2 callers
Function
randstring
(n int)
raft/config.go:26
↓ 2 callers
Method
readPersist
读取快照 两处调用:初始化阶段;收到Snapshot命令,即接收了leader的Snapshot
kvraft/server.go:210
↓ 2 callers
Method
readPersist
读取快照 两处调用:初始化阶段;收到Snapshot命令,即接收了leader的Snapshot
shardkv/server_snapshot.go:35
↓ 2 callers
Method
resetAppendEntriesTimer
重置单个timer
raft/raft_append_entries.go:37
↓ 2 callers
Method
resetAppendEntriesTimersZero
立马发送
raft/raft_append_entries.go:24
↓ 2 callers
Method
rpcTotal
()
kvraft/config.go:392
↓ 2 callers
Method
rpcTotal
()
raft/config.go:414
↓ 2 callers
Method
scanTaskState
扫描任务状态并适当更新
mr/coordinator.go:86
↓ 2 callers
Method
set
(pos uint)
porcupine/bitset.go:29
↓ 2 callers
Function
spawn_clients_and_wait
spawn ncli clients and wait until they are all done
kvraft/test_test.go:117
↓ 2 callers
Function
usage
()
main/diskvd.go:25
↓ 2 callers
Function
usage
()
main/lockc.go:11
↓ 2 callers
Method
waitCmd
调用start向raft请求命令
kvraft/server.go:82
↓ 2 callers
Method
waitCommand
(clientId int64, commandId int64, method, key, value string, configNum int)
shardkv/server_op.go:50
↓ 1 callers
Method
DisconnectClientUnlocked
caller should hold cfg.mu
shardctrler/config.go:212
← previous
next →
101–200 of 474, ranked by callers