omnipaxos icon indicating copy to clipboard operation
omnipaxos copied to clipboard

OmniPaxos struct

Open haraldng opened this issue 2 years ago • 1 comments

Create a unified OmniPaxos struct that has the BLE and SequencePaxos structs as private fields instead.

We previously had separated BLE and SequencePaxos as described in the pseudo code. However, this is not necessary. This change will be another step towards making OmniPaxos appear as a log. The user will only interact with one struct, and we can do the leader change logic internally.

What needs to be considered is how we do the outgoing message queues. Using a single message queue for both BLE and SequencePaxos messages is nice from the user's perspective, but then we need to ensure that heartbeats don't get queued up behind a bunch of replication messages. One approach is to piggyback the heartbeats with the replication messages.

haraldng avatar Oct 06 '22 17:10 haraldng

This will also enable having a single logical clock and make it easier to implement #33

haraldng avatar Oct 06 '22 17:10 haraldng