Hello,

SyncEvolution now adds a new feature : message resend if the last response from 
server get lost. We expect server can handle such case and just resends the 
last response again when receiving duplicated client side requests. This 
improves client side stability in poor network environments and also avoids a 
client side hanging bug [1]. 

We have conduct tests with several servers (synthesis, scheduleworld, funambol, 
mobical), the status can be summarized as 
1. works good with synthesis
2. a hanging bug with ScheduleWorld and funambol [2]. (If client resends "Alert 
222", server will not progress further, leading to endless loop)
3. hardly work with mobical (only works when resend occurs before any data is 
really exchanged). 
3.1 If resend occurs while client is sending its changes, server will responds 
error '500', client side changes accepted, server side changes not resent. 
3.2 If resend occurs before client start sending its changes, works
3.3 If resend occurs after client sending changes, server will respond with a 
message with wrong message id

The conclusion is message resend improves client side stability though servers 
not fully support on this. For servers which does not respect the "resend" 
message (mobical), resend introduced no harm. The only drawback introduced by 
message resend for us is the hanging problem[2]. 

[1] http://bugzilla.moblin.org/show_bug.cgi?id=3427
[2] 
https://core.forge.funambol.org/ds/viewMessage.do?dsForumId=402&dsMessageId=66938


Thanks,
Chen,Congwu


_______________________________________________
os-libsynthesis mailing list
[email protected]
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis

Reply via email to