Hello!

As I might have mentioned before, in SyncEvolution we try to prevent
unwanted slow syncs to give the user the chance to choose some other way
of recovery (refresh sync, restore from backup):
http://bugzilla.moblin.org/show_bug.cgi?id=2416

My current solution only partly works in a SyncML client: in the
<alertscript>, the client checks the mode suggested by the server. The
anchor check of the client happens after that, so if the client engine
switches to a slow sync because the server's anchor is wrong, the slow
sync is not prevented.

In a SyncML server, <alertscript> is called before any kind of anchor
checking and thus not useful for this purpose at all.

Here's a different idea. Instead of doing the checking via script, could
the StartDataRead() in the datastore plugin do the checking? First
problem: is this really called after the sync mode has been determined,
in both client and server? Second problem: how can the plugin find out
what the mode is?

I think StartDataRead() is called at the right time. The mode could be
passed via a key, except that a) a server has no profiles and thus no
per-datastore keys (right?) and b) there is no suitable key yet (the
existing "syncmode" only exposes "twoway", "from server only", "from
client only").

Any hints?

-- 
Best Regards

Patrick Ohly
Senior Software Engineer

Intel GmbH
Open Source Technology Center               
Hermuelheimer Strasse 8a                  Phone: +49-2232-2090-30
50321 Bruehl                              Fax: +49-2232-2090-29
Germany


_______________________________________________
os-libsynthesis mailing list
os-libsynthesis@synthesis.ch
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis

Reply via email to