Actions :: UUID vs. Tag on command line

Gustavo Niemeyer gustavo at niemeyer.net
Fri Oct 24 19:03:52 UTC 2014


That feels like a pretty relevant bug. Glad we talked about it.

On Fri Oct 24 2014 at 4:56:26 PM John Weldon <johnweldon4 at gmail.com> 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 <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/5e806ec0/attachment-0001.html>


More information about the Juju-dev mailing list