On Tue, 2010-01-19 at 18:50 +0100, Torben Weis wrote:
> Hi,
> 
> 
> I have been pondering on how to support offline-working in
> QWaveClient.
> It is getting tricky when the TCP connection breaks accidentially,
> 
> 
> Let's imagine the client sent a delta to the server, the server
> processes it,
> but the client could not hear it because the connection is broken.
> 
> 
> Eventually the client will reconnect. Now it does not have a chance of
> seeing 
> whether its last delta has reached the server or not.
> In general it seems next to impossible to tell whether any given
> server delta corresponds
> to a client delta, because deltas are transformed and do not carry
> IDs.
> 
> 
> Currently I see no quick solution.
> Two more complex solutions come to my mind:
> a) Introduce IDs in deltas. Unlikely because that would require Google
> to change
>    its code heavily? Nevertheless, it would be nice because currently
> QWaveClient uses
>    a most aweful hack to determin whether its delta has been processed
> by the server ...
> b) When connection to FedOne, the server should ask for a client ID.
>    For each client ID & wavelet ID it keeps a persistent record about
> the version of the last submitted delta.
>    Upon connect the client can query fedone for this version
> information.
>    This would mean no modifications to the federation protocol, but it
> would require some fedone extensions.
> 
> 
> Any other ideas, suggestions?

How about when the client connects to the server again it does a history
check against the known good deltas it has sent out. If the last delta
it sent out isn't in the history, then it hasn't been received.

-- 
James Purser
http://wavingtheshiny.collaborynth.com.au
Wave Addresses: 
[email protected] (wave.google.com)
[email protected] (wavesandbox.com)
[email protected] (collaborynth.com.au FedOne Server)
Skype: purserj1977
GTalk: [email protected]

-- 
You received this message because you are subscribed to the Google Groups "Wave 
Protocol" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/wave-protocol?hl=en.


Reply via email to