This is regarding the change to commit logs to make them compatible with RAFT. So I have been going through https://github.com/coreos/etcd/tree/master/contrib/raftexample to understand how Raft works in general and what part the WAL play. These guys have built up an example which has a key value store backed by Raft. It took rather long to wrap my head around this but I feel I have a much better understanding of the code there now.
From what I understand WAL is used to bring back data from the disk(WAL files) into memory(raftStorage in example) https://github.com/coreos/etcd/blob/master/contrib/raftexample/raft.go#L160 when a node starts, restarts.
All requests that come to the master are written to the WAL and the raftStorage. Later when they are committed(Proposition is accepted by a quorum), the are sent over the commit channel which then updates the KV store.
WAL also has the ability to store snapshots where while replaying your can open WAL from a particular snapshot and read entries from that point on.
The WAL files are of 64M each and also store HardState(https://godoc.org/github.com/coreos/etcd/raft/raftpb#HardState) apart from the entries. I have to now figure that how we use and modify our commit logs so that they work with RAFT.