That feels like a pretty relevant bug. Glad we talked about it. On Fri Oct 24 2014 at 4:56:26 PM John Weldon <[email protected]> wrote:
> 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. > > I'll start working on this. > > -- > John Weldon > > On Fri, Oct 24, 2014 at 11:48 AM, Gustavo Niemeyer <[email protected]> > wrote: > >> 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. >> >> >> On Fri Oct 24 2014 at 4:44:03 PM John Weldon <[email protected]> >> wrote: >> >>> Agreed completely; >>> >>> My take away - >>> >>> 1. Actions en-queued by the same client MUST execute in the order >>> en-queued. >>> 2. Actions en-queued by different clients SHOULD execute in timestamp >>> order? >>> 3. Action IDs should not mislead users by implying sequence that does >>> not exist. >>> 4. ergo Action id's will probably be reflected back to the user in some >>> sort of a manageable hash or hex format >>> >>> >>> >>> -- >>> John Weldon >>> >>> On Fri, Oct 24, 2014 at 11:38 AM, Gustavo Niemeyer <[email protected] >>> > wrote: >>> >>>> >>>> >>>> On Fri Oct 24 2014 at 4:30:38 PM John Weldon <[email protected]> >>>> wrote: >>>> >>>>> Ordered execution wasn't addressed in the spec, and we haven't had >>>>> much discussion about it. >>>>> I'm not even sure how to enforce ordered execution unless we rely on >>>>> the creation timestamp. >>>>> >>>> >>>> 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. >>>> >>>> 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. >>>> >>>> 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. >>>> >>>> >>>>> 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? >>>>> >>>> >>>> How do you feel about "postgres action 103" executing before "postgres >>>> action 102"? I personally feel like it's a bug. >>>> >>>> >>>>> 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? >>>>> >>>> >>>> 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. >>>> >>>> >>> >
-- Juju-dev mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju-dev
