Message-id management revisited
Mark Taylor
m.b.taylor at bristol.ac.uk
Thu Jun 5 01:42:58 PDT 2008
Hi Mike,
On Wed, 4 Jun 2008, Mike Fitzpatrick wrote:
>> 2. sender generates single msg-id with fixed form <client-id>-<msg-tag>
>> (this was Mike's original proposal)
>> - hub can avoid maintaining *essential* state, but if it wants to
>> keep track of other per-message info (e.g. timestamp, checksum,
>> ...) it will need to store it internally. Also need to worry
>> about what happens if the sender does not follow the requirement
>> for how the id is generated - better to have an interface in
>> which it's impossible to do the wrong thing.
>
> This is still my first choice (surprised?). Because:
>
> - If the sender/hub id strings are truly opaque as was initially
> argued, then there is no wrong way for a client to generate the ID, it's
> the hub that concatenates the values to form the final string. The
I understood that your original intention was for the sender to do
the concatenation (hence your earlier concern about the sender
needing to know its own client-id). If the sender sends its part
and the hub forms the actual message-id by concatenating it to the
sender-id, then yes there is no wrong way to do it - that would
be better, and would remove the second of my concerns above.
> value of the hub creating a second (perhaps concatenated, perhaps
> not) opaque string as a separate ID is dubious (in general, in the way
> Mark intends to use it I think its a variation on this theme but does no
> harm).
> - If the final string might contain something useful like a checksum as
> was later argued, then why not let all apps in on the format so they can
> parse out the useful bits as they see fit. We now have a case
The reason is that things like checksum/timestamp/whatever-I-think-up-
next-week are implementation details. They are not things that I am
suggesting we formalise in the specification, but things which
individual hub implementations may privately decide they want to encode.
So there is no public definition of such a format to let clients in on.
> where we want
> the original sender-id, is it a stretch to think we might later want the
> timestamp/checksum/whatever-the-hub-does later when we'll need to
> revisit this same issue?
> - I really don't see the harm in recommending a format for the id
> string. Is
> this really more onerous for the hub/client developer than specifying the
> hub methods or message format?
It's not the onerosity(?) that I'm worried about, its removing the
ability to exploit the freedom to choose a format for
implementation-specific purposes.
>
>> 4. hub provides hub-msg-id -> sender-msg-id translation method
>> - OK but slightly messy
>
> Should there be a lack of unanimous epiphany regarding the above
> argument, this would be my second choice. This simply exposes a functionality
> the Hub must already implement in order to handle a reply, and it's a really
> small number of apps that would need this as a way to get the sender-id to
> send a progress message. The concern then is that it opens to door to
> requiring similar methods to get other useful data from the id string
> as mentioned
> above.
OK then, if nobody else expresses an opinion (Al your voice is noted
but currently outvoted) let's go with this.
Mark
--
Mark Taylor Astronomical Programmer Physics, Bristol University, UK
m.b.taylor at bris.ac.uk +44-117-928-8776 http://www.star.bris.ac.uk/~mbt/
More information about the apps-samp
mailing list