These are chat archives for RBMHTechnology/eventuate

27th
Dec 2016
Alexander Semenov
@Tvaroh
Dec 27 2016 08:36

@Tvaroh I understand your requirement but I'm not sure if your implementation of "replace" commutes the way you implement it (I don't have a counter-example at the moment though).

I suspect it doesn't. I've been debugging this stuff from yesterday and getting random failures, when trees on different nodes are not equal (but most of the time they are). I think this happens when calling this concurrently at downstream: edges.remove(edges.prepareRemove(edge)) (where edges are ORSets).

Thinking how to fix that.

Summary: I need to remove some ORSet elements at downstream, and I can't observe them at source cause they are not there at that moment but rather added concurrently.