Hello! Intel QA found that SyncEvolution can get stuck waiting for a response basically forever when the network connection goes down temporarily and the server gives up sending the response to the POST during that time, leading to a half-open TCP connection on the client with no progress. See http://bugzilla.moblin.org/show_bug.cgi?id=3427
I checked whether SO_KEEPALIVE probes would help, but because of the long timeout (2 hours on Linux) which cannot be reduced on a per-socket basis, this isn't a feasible solution to detect the problem in an interactive app in a reasonable amount of time. What is Synthesis doing to handle this problem? We would need a "keepalive" probe at the SyncML level, but I don't think there is such a thing, is it? I can imagine that sending garbage POST requests to the sync URL might work: the expectation is that a reply to those must be received quickly, if not, then we can assume that the network or server is down. -- Best Regards, Patrick Ohly The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter. _______________________________________________ os-libsynthesis mailing list [email protected] http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis
