On 07.02.2013, at 14:14, Patrick Ohly <[email protected]> wrote:

> On Thu, 2013-02-07 at 13:46 +0100, Christof Schulze wrote:
>> I started with a one-way-sync from phone to syncevo-http-server.
>> This caused syncevolution to remove all data from owncloud, which is
>> perfectly fine. However doing so takes about one second for each entry
>> causing the phone to report a timeout after a while.
>> 
>> What is your take on that? Shouldn't syncevo-http-server try to keep the
>> session to the phone open?
> 
> The session is kept open; it's the phone decides that it is waiting too
> long for a reply and therefore aborts. I know that the Synthesis SyncML
> engine can send empty messages to inform the client that it is still
> alive, but I am not familiar with how that works in detail.
> 
> Lukas, can you say more about this feature? When does it kick in?

This only works during loading the sync set, and only if libsynthesis is 
configured to allow threads (<multithread> set). Then, the initial loading 
operation (performStartSync()) is run in a separate thread   while the main 
thread issues a (empty) response every <requestmaxtime>.

However, the deletes that seem to cause the timeout are probably happening 
during implStartDataWrite()/apiZapSyncSet(), which does not have the option to 
get executed in a separate thread.

>> Maybe a better approach would be to clean all
>> files at once on the webdav server to circumvent the timeout in the
>> first place?
> 
> Did you do a "refresh" sync?
> 
> There are ways to let a backend wipe out data more efficiently. The
> WebDAV backend doesn't support that at the moment, leading to a lot of
> DELETE requests. As you said, this should be added.

Yes, a more efficient delete-all operation usually can solve this problem. The 
libsynthesis plugin API has the option to implement a delete-all operation in 
DeleteSyncSet(), only if it is not implemented, the engine will issue a row of 
single item deletes.

Lukas


Lukas Zeller, plan44.ch
[email protected] - www.plan44.ch

_______________________________________________
SyncEvolution mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution

Reply via email to