5 ms·
Indeed that is how we break ties (not exactly the PID, but you get the idea). The reason this works is that the only time we can have a tie is if there can be
by tomegun 10y ago
Indeed that is how we break ties (not exactly the PID, but you get the idea).
The reason this works is that the only time we can have a tie is if there can be no causality between the events. I.e., the two sending events happen concurrently: the two ioctl calls overlap in time, so there would be no way for one to have caused the other.
What problem do you see with this?
- mfukar 10y agoI foresee a problem where people confuse the wording of "total order on all messages" in the wiki to mean there is a "global total order" - in other words, that bus1 solves distributed systems and we can all go home - and building buggy systems on this assumption. I'm not saying the concept is flawed or the implementation buggy, or anything like that. PS. Neil Brown in the LWN article already conflates "global" and "total" order.
- jasonwatkinspdx 10y agoI'd suggest reading the hybrid logical clocks paper.
- mfukar 10y agoI have - I'm actually working with it on a multi-version IPC provider (totally unrelated to bus1 & friends). Is it relevant here? I know they're the latest and greatest, but they're not without problems either.
- jasonwatkinspdx 10y agoBased on your comments about lamport clocks, etc, I thought you'd find it interesting.
- mfukar 10y agoIt is indeed. Cool applications too. I remember at least GUN - a graph db engine - uses them to great effect, and its author hangs out here, iirc.