<div dir="ltr">Hmm; makes sense, but this will require some refactoring, because the watcher collects and returns the id's of new actions as an unordered set, as it stands today.<div><br></div><div>I'll start working on this.</div></div><div class="gmail_extra"><br clear="all"><div>--<br>John Weldon</div>
<br><div class="gmail_quote">On Fri, Oct 24, 2014 at 11:48 AM, Gustavo Niemeyer <span dir="ltr"><<a href="mailto:gustavo@niemeyer.net" target="_blank">gustavo@niemeyer.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">For 2, it doesn't matter much if the timestamp is taken into account. The server may simply enqueue the action as it receives it and respond back only afterwards. This will guarantee read-your-writes consistency, and thus proper ordering assuming the server does use a queue rather than an unordered set.<div class="HOEnZb"><div class="h5"><br><br><div class="gmail_quote">On Fri Oct 24 2014 at 4:44:03 PM John Weldon <<a href="mailto:johnweldon4@gmail.com" target="_blank">johnweldon4@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Agreed completely;<div><br></div><div>My take away - </div><div><br></div><div>1. Actions en-queued by the same client MUST execute in the order en-queued.</div><div>2. Actions en-queued by different clients SHOULD execute in timestamp order?</div><div>3. Action IDs should not mislead users by implying sequence that does not exist.</div><div>4. ergo Action id's will probably be reflected back to the user in some sort of a manageable hash or hex format</div><div><br></div><div><br></div></div><div class="gmail_extra"><br clear="all"><div>--<br>John Weldon</div></div><div class="gmail_extra">
<br><div class="gmail_quote">On Fri, Oct 24, 2014 at 11:38 AM, Gustavo Niemeyer <span dir="ltr"><<a href="mailto:gustavo@niemeyer.net" target="_blank">gustavo@niemeyer.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span><br><br><div class="gmail_quote">On Fri Oct 24 2014 at 4:30:38 PM John Weldon <<a href="mailto:johnweldon4@gmail.com" target="_blank">johnweldon4@gmail.com</a>> wrote:</div></span><div class="gmail_quote"><span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">Ordered execution wasn't addressed in the spec, and we haven't had much discussion about it.</div><div class="gmail_extra">I'm not even sure how to enforce ordered execution unless we rely on the creation timestamp.</div></div></blockquote><div><br></div></span><div>Specifications are guidelines. If there are open issues in the specifications, it does not mean that it is okay to do anything in that sense, but rather than either it should be done in the obviously correct way, or that a conversation should be raised if the correct way is not obvious.</div><div><br></div><div>If someone sends an action, and then sends another action, to me it's clear that the first action should be executed before the second action. If the implementation is not doing that, it should.</div><div><br></div><div>If two people send two actions concurrently, by definition there's no order implied by their use of the system, and so it's impossible to guarantee which one will be executed first.</div><span><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br></div><div class="gmail_extra">Assuming we have a way to enforce ordered execution, and if that ordering is not using the sequence number that is generated, then does exposing that sequence number just introduce confusion?</div></div></blockquote><div><br></div></span><div>How do you feel about "postgres action 103" executing before "postgres action 102"? I personally feel like it's a bug.</div><span><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">i.e. are we back to just showing some sort of hash / hex sequence as the id to avoid implying an order by the sequence number?<br></div></div></blockquote><div><br></div></span><div>Either option sounds fine to me. I'm only suggesting that if you do use sequence numbers, you're implying a sequence, and people in general are used to being 35 years old only after they've been 34.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">
</div></div>
</blockquote></div>
</blockquote></div><br></div></blockquote></div>
</div></div></blockquote></div><br></div>