I’m implementing mutations via RAFT in Dgraph. Previously, in our distributed system, if any of the nodes weren’t able to apply the mutations, they would return error, which we’d in turn return to the client. However, with RAFT, all we can do is to propose the change, and let RAFT do the consensus, before trying to apply the mutation. Is there a way for us to block the reply to client and return back with whether the mutations were applied successfully or not?
The only way I can see right now is to reply back immediately, and then let RAFT do a best effort in terms of applying the mutation – which isn’t ideal.