3 ms·
If the only non determinism is in the message passing, then recording and replaying the receive buffer should look exactly the same between your system and city
by setr 4y ago
If the only non determinism is in the message passing, then recording and replaying the receive buffer should look exactly the same between your system and city bound, without forcing an ordering — replaying is itself eliminating the source of non-determinism. So testing should look exactly the same.
Rand() and friends obviously needs to be handled appropriately but as long as you have only one owner of data (and thus one writer), by passing messages of the form “try to add 1 to x” rather than “x=5” or “add 1 to x” message-queues have a strict ordering by nature.
- tinco 4y agoThe source of the non determinism is in the concurrent processing of the messages.