How does the 389 multi-master replication work?
389 replication uses a push model. A replication supplier is a server that pushes updates to other servers. A master is a supplier that can receive update requests from clients. A hub is a supplier that receives update requests from other replication suppliers and pushes updates to other replicas. With multi-master replication, a master is both a replication supplier and a replication consumer. Each master can be updated at the same time and send its changes to the other masters and replicas. If conflicts occur, the conflict resolution algorithm will resolve them, and if that is not possible, the conflicts are flagged for viewing by the administrator. Each modification is assigned a Change State Number (CSN) which uniquely identifies the modification. Part of the CSN is a timestamp, and part is the identifier of the master on which the change originated. The conflict resolution algorithm usually processes the changes such that the “last one wins” based on the timestamp, but there are m