On Mon, Feb 17, 2014 at 10:55 AM, Thijs Alkemade <[email protected]> wrote: > > On 17 feb. 2014, at 11:26, Kevin Smith <[email protected]> wrote: > >> In MAM, stanzas stored get stamped with a MAM ID by the entity that >> stored them, and entities receiving them then receive this. >> >> So a general question - are these useful? Are clients going to ignore >> them and just request all history since they last requested it anyway? >> >> /K > > Because querying by date range is unreliable, and should be avoided wherever > possible. The client's and the server's clock could be minutes apart and even > if they were synchronized then multiple messages arriving in the same second > can lead to difficult edge cases.
Yes, I'm not suggesting that querying by timestamp is a generally sensible thing. > I'd much rather query by the UUID injected into a message than by the > approximate datestamp. What are you querying for, and how are you using the injected ID? I previously thought the ID injected into the stream would be useful, but having now thought of how smart a client has to be to make use of it (needs to query MAM on login, enable carbons, use 198-acks in some slightly convoluted way to tie up outgoing messages with the incoming ones to sort out ordering as the server archive saw it...), I'm less convinced. I could become convinced again. /K
