Re: Patch for syncing using hashes





2008/9/27 Matt Colyer <matt colyer name>
So currently if a data source doesn't have mtimes, the synchronization
pretty much just gives up.

I have attached a patch to compute whether both sides of the
synchronization have been modified. If they haven't been both modified
we can safely assume that the modified one is the one that we want. If
they have been both modified we retain the original behavior.

Hi Matt,

This sounds good. I will have a play with this today. Any chance you could also add a test for this, perhaps to TestCoreSyncLogic.py?

Otherwise i will work on adding a test later today

Thanks

John


This is a fairly large change if something isn't quite right with the
patch let me know but this is my best guess from what's available (I
wish there was a better way to grab the sink uid from inside the compare
function).

The reason I would like to see this in trunk is that I am attempting to
implement synchronization for iPhone databases and there is no mtime
information available. Syncing without this fix is pretty frustrating.

-Matt


2008-09-26  Matt Colyer <>

   * conduit/MappingDB.py: Added a way to find a row based on two
objects and the sink.
   * conduit/datatypes/*.py: Forced get_hash to string values and
changed compare to use the hashes (when no mtimes present).
   * conduit/modules/EvolutionModule/EvolutionModule.py: Changed
compare to use new hash functionality. Fixed Note not return a proper
rid.


_______________________________________________
Conduit-list mailing list
Conduit-list gnome org
http://mail.gnome.org/mailman/listinfo/conduit-list




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]