Please bottom-post on this list.

On 26 Jan 2015, at 11:20, Piotr Nosek <[email protected]> wrote:
>> 
>> On Thu, Jan 22, 2015 at 2:47 PM, Kevin Smith <[email protected]> wrote:
>> On 22 Jan 2015, at 13:24, Georg Lukas <[email protected]> wrote:
>> >
>> > * Kevin Smith <[email protected]> [2015-01-22 14:14]:
>> >>> How would you deduplicate a mix of messages received normally and MAM
>> >>> messages? Are you supposed to delete all normal messages when syncing up
>> >>> with MAM?
>> >> Yep.
>> >
>> > Hmm. My gut feeling is that I don't particularly like that approach.
>> > Maybe we can really deprecate it with the unique-id idea.
>> 
>> As I said earlier - if someone can come up with an alternative that works 
>> (in the edge cases, not just the obvious single-client case), I think 
>> speccing it would be great. No-one’s come up with such a proposal yet.
> But what are these edge cases actually?  Can anyone write an example, a clear 
> scenario that is problematic when using server-side IDs?

A few examples (between server and client) of what happens if you try to use 
the local archive on a client to fill in gaps in received server archives (i.e. 
to not fetch server archives for periods the client was online). These are 
addressible, to different degrees, with sufficient amounts of client smarts, 
but not (I believe) all. The list of edge cases was longer than this, but these 
are the ones I can trivially remember:

1 server sends messageA
2 client sends messageB
3 client receives messageA
4 server receives messageB

Client has the archive out of order

1 server sends messageA
2 client sends messageB
3 client receives messageA
4 client disconnects

Client has a message in its archive that was never delivered.

1) client sends messageA
2…26) client sends messageB…messageZ
3) session ends

The client has to do a full sync anyway, because it doesn’t have IDs for any of 
its sent stanzas.

/K

Reply via email to