Actions :: UUID vs. Tag on command line

John Weldon johnweldon4 at gmail.com
Fri Oct 24 18:55:44 UTC 2014


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 <gustavo at niemeyer.net>
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 <johnweldon4 at gmail.com>
> 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 <gustavo at niemeyer.net>
>> wrote:
>>
>>>
>>>
>>> On Fri Oct 24 2014 at 4:30:38 PM John Weldon <johnweldon4 at gmail.com>
>>> 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.
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/juju-dev/attachments/20141024/6e57f334/attachment.html>


More information about the Juju-dev mailing list