TODO:
- start the servers in go routines instead of main routine (done)
- implement map and reduce functions in pkg/utils.go (done)
- execute tasks on worker side (done)
- assign next after worker is finished with current task
- notify master of finished tasks after map (done)
- simulate failures
- handle failures for workers (done , not tested , point 6)
- change reduce function input from list of key value pair to key, list of value pair (involves changing how the mapper will send data) (done)
- debug kernel case (done)
- At seperate terminals run the workers
go run cmd/worker/main.go -port 707(0/1/2/3/)
- Run the master
go run cmd/master/main.go
- To generate new test cases, run
gen.py