├── .idea ├── .gitignore ├── 6.824.iml ├── deployment.xml ├── leetcode │ └── statistics.xml ├── modules.xml ├── sshConfigs.xml ├── vcs.xml └── webServers.xml ├── Makefile ├── README.md └── src ├── .gitignore ├── go.mod ├── go.sum ├── kvraft ├── client.go ├── common.go ├── config.go ├── dstest.py ├── server.go └── test_test.go ├── labgob ├── labgob.go └── test_test.go ├── labrpc ├── labrpc.go └── test_test.go ├── main ├── diskvd.go ├── lockc.go ├── lockd.go ├── mrcoordinator.go ├── mrsequential.go ├── mrworker.go ├── pbc.go ├── pbd.go ├── pg-being_ernest.txt ├── pg-dorian_gray.txt ├── pg-frankenstein.txt ├── pg-grimm.txt ├── pg-huckleberry_finn.txt ├── pg-metamorphosis.txt ├── pg-sherlock_holmes.txt ├── pg-tom_sawyer.txt ├── test-mr-many.sh ├── test-mr.sh └── viewd.go ├── models └── kv.go ├── mr ├── coordinator.go ├── rpc.go └── worker.go ├── mrapps ├── crash.go ├── early_exit.go ├── indexer.go ├── jobcount.go ├── mtiming.go ├── nocrash.go ├── rtiming.go └── wc.go ├── porcupine ├── bitset.go ├── checker.go ├── model.go ├── porcupine.go └── visualization.go ├── raft ├── config.go ├── dstest.py ├── persister.go ├── raft.go ├── test_test.go └── util.go ├── shardctrler ├── client.go ├── common.go ├── config.go ├── server.go └── test_test.go └── shardkv ├── client.go ├── common.go ├── config.go ├── server.go └── test_test.go /.idea/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/.gitignore -------------------------------------------------------------------------------- /.idea/6.824.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/6.824.iml -------------------------------------------------------------------------------- /.idea/deployment.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/deployment.xml -------------------------------------------------------------------------------- /.idea/leetcode/statistics.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/leetcode/statistics.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/sshConfigs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/sshConfigs.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /.idea/webServers.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/.idea/webServers.xml -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/README.md -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/.gitignore -------------------------------------------------------------------------------- /src/go.mod: -------------------------------------------------------------------------------- 1 | module mit6.824 2 | 3 | go 1.15 4 | -------------------------------------------------------------------------------- /src/go.sum: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/kvraft/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/client.go -------------------------------------------------------------------------------- /src/kvraft/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/common.go -------------------------------------------------------------------------------- /src/kvraft/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/config.go -------------------------------------------------------------------------------- /src/kvraft/dstest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/dstest.py -------------------------------------------------------------------------------- /src/kvraft/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/server.go -------------------------------------------------------------------------------- /src/kvraft/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/kvraft/test_test.go -------------------------------------------------------------------------------- /src/labgob/labgob.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/labgob/labgob.go -------------------------------------------------------------------------------- /src/labgob/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/labgob/test_test.go -------------------------------------------------------------------------------- /src/labrpc/labrpc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/labrpc/labrpc.go -------------------------------------------------------------------------------- /src/labrpc/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/labrpc/test_test.go -------------------------------------------------------------------------------- /src/main/diskvd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/diskvd.go -------------------------------------------------------------------------------- /src/main/lockc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/lockc.go -------------------------------------------------------------------------------- /src/main/lockd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/lockd.go -------------------------------------------------------------------------------- /src/main/mrcoordinator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/mrcoordinator.go -------------------------------------------------------------------------------- /src/main/mrsequential.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/mrsequential.go -------------------------------------------------------------------------------- /src/main/mrworker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/mrworker.go -------------------------------------------------------------------------------- /src/main/pbc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pbc.go -------------------------------------------------------------------------------- /src/main/pbd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pbd.go -------------------------------------------------------------------------------- /src/main/pg-being_ernest.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-being_ernest.txt -------------------------------------------------------------------------------- /src/main/pg-dorian_gray.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-dorian_gray.txt -------------------------------------------------------------------------------- /src/main/pg-frankenstein.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-frankenstein.txt -------------------------------------------------------------------------------- /src/main/pg-grimm.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-grimm.txt -------------------------------------------------------------------------------- /src/main/pg-huckleberry_finn.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-huckleberry_finn.txt -------------------------------------------------------------------------------- /src/main/pg-metamorphosis.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-metamorphosis.txt -------------------------------------------------------------------------------- /src/main/pg-sherlock_holmes.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-sherlock_holmes.txt -------------------------------------------------------------------------------- /src/main/pg-tom_sawyer.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/pg-tom_sawyer.txt -------------------------------------------------------------------------------- /src/main/test-mr-many.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/test-mr-many.sh -------------------------------------------------------------------------------- /src/main/test-mr.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/test-mr.sh -------------------------------------------------------------------------------- /src/main/viewd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/main/viewd.go -------------------------------------------------------------------------------- /src/models/kv.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/models/kv.go -------------------------------------------------------------------------------- /src/mr/coordinator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mr/coordinator.go -------------------------------------------------------------------------------- /src/mr/rpc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mr/rpc.go -------------------------------------------------------------------------------- /src/mr/worker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mr/worker.go -------------------------------------------------------------------------------- /src/mrapps/crash.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/crash.go -------------------------------------------------------------------------------- /src/mrapps/early_exit.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/early_exit.go -------------------------------------------------------------------------------- /src/mrapps/indexer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/indexer.go -------------------------------------------------------------------------------- /src/mrapps/jobcount.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/jobcount.go -------------------------------------------------------------------------------- /src/mrapps/mtiming.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/mtiming.go -------------------------------------------------------------------------------- /src/mrapps/nocrash.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/nocrash.go -------------------------------------------------------------------------------- /src/mrapps/rtiming.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/rtiming.go -------------------------------------------------------------------------------- /src/mrapps/wc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/mrapps/wc.go -------------------------------------------------------------------------------- /src/porcupine/bitset.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/porcupine/bitset.go -------------------------------------------------------------------------------- /src/porcupine/checker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/porcupine/checker.go -------------------------------------------------------------------------------- /src/porcupine/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/porcupine/model.go -------------------------------------------------------------------------------- /src/porcupine/porcupine.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/porcupine/porcupine.go -------------------------------------------------------------------------------- /src/porcupine/visualization.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/porcupine/visualization.go -------------------------------------------------------------------------------- /src/raft/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/config.go -------------------------------------------------------------------------------- /src/raft/dstest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/dstest.py -------------------------------------------------------------------------------- /src/raft/persister.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/persister.go -------------------------------------------------------------------------------- /src/raft/raft.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/raft.go -------------------------------------------------------------------------------- /src/raft/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/test_test.go -------------------------------------------------------------------------------- /src/raft/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/raft/util.go -------------------------------------------------------------------------------- /src/shardctrler/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardctrler/client.go -------------------------------------------------------------------------------- /src/shardctrler/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardctrler/common.go -------------------------------------------------------------------------------- /src/shardctrler/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardctrler/config.go -------------------------------------------------------------------------------- /src/shardctrler/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardctrler/server.go -------------------------------------------------------------------------------- /src/shardctrler/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardctrler/test_test.go -------------------------------------------------------------------------------- /src/shardkv/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardkv/client.go -------------------------------------------------------------------------------- /src/shardkv/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardkv/common.go -------------------------------------------------------------------------------- /src/shardkv/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardkv/config.go -------------------------------------------------------------------------------- /src/shardkv/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardkv/server.go -------------------------------------------------------------------------------- /src/shardkv/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Vacant2333/MIT6.824-2022/HEAD/src/shardkv/test_test.go --------------------------------------------------------------------------------