These are chat archives for RBMHTechnology/eventuate
Global-scale event sourcing and event collaboration with causal consistency
Hi, I'm implementing the stability part for pure op-based crdts and I must send local
replicaVersionVectors to other endpoints.
These could be sent
case r @ ReplicationReadSuccess(events, _, _, targetLogId, _) => val currentTargetVersionVector = replicaVersionVectors(targetLogId) val updated = events.filterNot(_.before(currentTargetVersionVector)) val reply = r.copy(updated, currentSourceVersionVector = clock.versionVector) val sdr = sender() sdr ! prepareReplicaVersionVectors(targetLogId) // <----------- added this line sdr ! reply channel.foreach(_ ! reply) logFilterStatistics("source", events, updated)
The third option puts extra messages in the wire so I think it would be better to include this information in
I ask this because modifying
ReplicationReadSuccess requires many changes, so I prefer to reach some agreement before.
ReplicationReadSuccessbecause they are created by the EventLog who has the
ReplicationReadare created by the
Replicatorhence it should ask to the EventLog.