<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: slow sync and transparent behaviour</title>
	<atom:link href="http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/</link>
	<description>Google and Zimbra contact sync for Thunderbird.</description>
	<pubDate>Sat, 31 Jul 2010 21:01:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: leni</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1121</link>
		<dc:creator>leni</dc:creator>
		<pubDate>Sat, 01 May 2010 01:12:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1121</guid>
		<description>@mfc, just FYI, release 0.8.16 of the addon will remove extensions.zindus preferences on uninstall.  Thanks for pointing that out!</description>
		<content:encoded><![CDATA[<p>@mfc, just FYI, release 0.8.16 of the addon will remove extensions.zindus preferences on uninstall.  Thanks for pointing that out!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mfc</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1097</link>
		<dc:creator>mfc</dc:creator>
		<pubDate>Thu, 29 Apr 2010 09:02:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1097</guid>
		<description>Leni

thanks very much, that is helpful.  Better understanding leads to fewer problems  
(in life as well as software ;-)</description>
		<content:encoded><![CDATA[<p>Leni</p>
<p>thanks very much, that is helpful.  Better understanding leads to fewer problems<br />
(in life as well as software <img src='http://www.zindus.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: leni</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1096</link>
		<dc:creator>leni</dc:creator>
		<pubDate>Thu, 29 Apr 2010 08:51:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1096</guid>
		<description>Change detection varies according to the data source:
- tb: calculate a checksum on each sync (as you guessed).  Change in checksum implies change in contact.
- Google: query "all contacts newer than XXX" where XXX is the time of the previous request
- Zimbra: query "all contacts newer than XXX" where XXX is a monotically increasing SyncToken</description>
		<content:encoded><![CDATA[<p>Change detection varies according to the data source:<br />
- tb: calculate a checksum on each sync (as you guessed).  Change in checksum implies change in contact.<br />
- Google: query &#8220;all contacts newer than XXX&#8221; where XXX is the time of the previous request<br />
- Zimbra: query &#8220;all contacts newer than XXX&#8221; where XXX is a monotically increasing SyncToken</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mfc</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1092</link>
		<dc:creator>mfc</dc:creator>
		<pubDate>Thu, 29 Apr 2010 07:22:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1092</guid>
		<description>Leni

But when you say "When a contact on one side changes, fast sync modifies the contact on the other side by overwriting all the fields that are common to both"  they key question is what method does Zindus use to know which side has changed?   

A simple comparison would just tell it both sides are different, and it seems like it is not keeping a full copy of each Tb record, so eg does it keep (say) a hash of each record or some other method?  Apologies I am not a programmer so can't check the source myself to understand.</description>
		<content:encoded><![CDATA[<p>Leni</p>
<p>But when you say &#8220;When a contact on one side changes, fast sync modifies the contact on the other side by overwriting all the fields that are common to both&#8221;  they key question is what method does Zindus use to know which side has changed?   </p>
<p>A simple comparison would just tell it both sides are different, and it seems like it is not keeping a full copy of each Tb record, so eg does it keep (say) a hash of each record or some other method?  Apologies I am not a programmer so can&#8217;t check the source myself to understand.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: leni</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1091</link>
		<dc:creator>leni</dc:creator>
		<pubDate>Thu, 29 Apr 2010 07:09:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1091</guid>
		<description>@mfc, the addon only knows that a contact has changed, it doesn't know which field(s) in a contact changed.  

This text (added to &lt;a href="zindus.com/i/fast-sync" rel="nofollow"&gt;fast sync&lt;/a&gt;) explains what happens next:
When a contact on one side changes, fast sync modifies the contact on the other side by overwriting all the fields that are common to both (and leaving the fields that aren’t common untouched).</description>
		<content:encoded><![CDATA[<p>@mfc, the addon only knows that a contact has changed, it doesn&#8217;t know which field(s) in a contact changed.  </p>
<p>This text (added to <a href="zindus.com/i/fast-sync" rel="nofollow">fast sync</a>) explains what happens next:<br />
When a contact on one side changes, fast sync modifies the contact on the other side by overwriting all the fields that are common to both (and leaving the fields that aren’t common untouched).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mfc</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1090</link>
		<dc:creator>mfc</dc:creator>
		<pubDate>Thu, 29 Apr 2010 06:47:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1090</guid>
		<description>Leni

eg if a field (say the Work web address) is different between Tb and G, how does it know which is new and which is old (to be overwritten)?    Does it keep a snapshot of the Tb addressbook?  (seems likely as this is probably one of the functions of slow sync, and a reset might just delete this snapshot) Is there an indicator from G that a field has changed since some event?</description>
		<content:encoded><![CDATA[<p>Leni</p>
<p>eg if a field (say the Work web address) is different between Tb and G, how does it know which is new and which is old (to be overwritten)?    Does it keep a snapshot of the Tb addressbook?  (seems likely as this is probably one of the functions of slow sync, and a reset might just delete this snapshot) Is there an indicator from G that a field has changed since some event?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: leni</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1086</link>
		<dc:creator>leni</dc:creator>
		<pubDate>Thu, 29 Apr 2010 05:37:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1086</guid>
		<description>@mfc, what sort of things need more explanation re: &lt;a href="zindus.com/i/fast-sync" rel="nofollow"&gt;fast sync&lt;/a&gt;?</description>
		<content:encoded><![CDATA[<p>@mfc, what sort of things need more explanation re: <a href="zindus.com/i/fast-sync" rel="nofollow">fast sync</a>?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mfc</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1085</link>
		<dc:creator>mfc</dc:creator>
		<pubDate>Thu, 29 Apr 2010 05:23:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1085</guid>
		<description>re 1. I should add I am using Tb 2.0.0.24, which in a csv puts the Work url in Web Page 1 and the Home url in Web Page 2.  G them imports them both as Home Page.</description>
		<content:encoded><![CDATA[<p>re 1. I should add I am using Tb 2.0.0.24, which in a csv puts the Work url in Web Page 1 and the Home url in Web Page 2.  G them imports them both as Home Page.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mfc</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1084</link>
		<dc:creator>mfc</dc:creator>
		<pubDate>Thu, 29 Apr 2010 05:16:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1084</guid>
		<description>Leni, thanks.  Messing up your contacts can really be disastrous, so testing to make sure Zindus was robust (it is) and that I understood it (see btw at bottom) was important.  

1.  Yes, when I create a url in the Work / Web Page, csv export / import brings them into G's Home Page field (G has Home, Work, Home Page, FTP, Blog,...), rather than the Work field.  The workaround, once I understood the problem, was to edit the csv before importing.  

2.  No, as I said I restored the Tb and G backups so that I was in each instance working with clean addressbooks on both sides - many times.  The only non-clean item was that in Preferences (4. below)  which I could also have restored but did not think it would be an issue.  
From what you say the 2nd behaviour (ie 95 duplicates) is the correct behaviour on a slow sync.  So I am not sure why it did not happen the first time - the imported csv was certainly the same.  It seems like the behaviour that would be expected on a fast sync??  In a long sequence of testing I am bound to have done something I did not properly record.  

3.  Understand - but that is currently the only way to get across addresses etc.   Propagating does not do it.  And as I mentioned, addresses, at least for me, are fundamental.  

4.  thanks, agree.  

My guess is that the problem some people had relates to some minor difference in a minor field (eg web page) causing slow-sync to create duplicates.  The transparency you have added - saying exactly how many will be added and where - makes it easy to cancel, understand, fix then retry.   

btw, A more detailed  explanation of how a fast sync works would be helpful.</description>
		<content:encoded><![CDATA[<p>Leni, thanks.  Messing up your contacts can really be disastrous, so testing to make sure Zindus was robust (it is) and that I understood it (see btw at bottom) was important.  </p>
<p>1.  Yes, when I create a url in the Work / Web Page, csv export / import brings them into G&#8217;s Home Page field (G has Home, Work, Home Page, FTP, Blog,&#8230;), rather than the Work field.  The workaround, once I understood the problem, was to edit the csv before importing.  </p>
<p>2.  No, as I said I restored the Tb and G backups so that I was in each instance working with clean addressbooks on both sides - many times.  The only non-clean item was that in Preferences (4. below)  which I could also have restored but did not think it would be an issue.<br />
From what you say the 2nd behaviour (ie 95 duplicates) is the correct behaviour on a slow sync.  So I am not sure why it did not happen the first time - the imported csv was certainly the same.  It seems like the behaviour that would be expected on a fast sync??  In a long sequence of testing I am bound to have done something I did not properly record.  </p>
<p>3.  Understand - but that is currently the only way to get across addresses etc.   Propagating does not do it.  And as I mentioned, addresses, at least for me, are fundamental.  </p>
<p>4.  thanks, agree.  </p>
<p>My guess is that the problem some people had relates to some minor difference in a minor field (eg web page) causing slow-sync to create duplicates.  The transparency you have added - saying exactly how many will be added and where - makes it easy to cancel, understand, fix then retry.   </p>
<p>btw, A more detailed  explanation of how a fast sync works would be helpful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: leni</title>
		<link>http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1077</link>
		<dc:creator>leni</dc:creator>
		<pubDate>Wed, 28 Apr 2010 22:39:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.zindus.com/blog/2009/11/06/slow-sync-and-transparent-behaviour/#comment-1077</guid>
		<description>@mfc, I can see you've done a bunch of testing!  Comments follow.

1. I'm not able to reproduce what you describe re: home url.  When I create a contact in TB with http://home.com in the "home web page" field, then when I sync and open gmail, that contact has "http://home.com under "Website" with a "home" label.  It sounds like you are seeing something different?

2. I'm guessing that the "duplicates" that got generated after you installed then uninstalled the other addon is because that other addon modified those 95 contacts in some way (eg the postal address field?).  So the second time you installed zindus, it did a slow sync and couldn't match them (because they really were different).

3. It's playing with fire to (a) have contacts in TB, (b) export them to Google then (c) expect slow sync to match them perfectly.  It sounds like it has worked for you and that's great, but it assumes that Thunderbird's export process and Google's import process doesn't transform the contacts in any way whatsoever and that's a big assumption!  As an alternative, see &lt;a href="http://www.zindus.com/faq-thunderbird/#toc-how-to-propagate-contacts" rel="nofollow"&gt;how to propagate contacts&lt;/a&gt;.

4. the reason the addon retained your account details across uninstall/reinstall is because they're stored in preferences.  To see your preferences, open Tools/Options/Advanced/Config Editor then type "extensions.zindus".  You're probably right that an uninstall of the addon should wipe those prefs too - will file a bug for this.

Thanks for the great feedback!</description>
		<content:encoded><![CDATA[<p>@mfc, I can see you&#8217;ve done a bunch of testing!  Comments follow.</p>
<p>1. I&#8217;m not able to reproduce what you describe re: home url.  When I create a contact in TB with <a href="http://home.com" rel="nofollow">http://home.com</a> in the &#8220;home web page&#8221; field, then when I sync and open gmail, that contact has &#8220;http://home.com under &#8220;Website&#8221; with a &#8220;home&#8221; label.  It sounds like you are seeing something different?</p>
<p>2. I&#8217;m guessing that the &#8220;duplicates&#8221; that got generated after you installed then uninstalled the other addon is because that other addon modified those 95 contacts in some way (eg the postal address field?).  So the second time you installed zindus, it did a slow sync and couldn&#8217;t match them (because they really were different).</p>
<p>3. It&#8217;s playing with fire to (a) have contacts in TB, (b) export them to Google then (c) expect slow sync to match them perfectly.  It sounds like it has worked for you and that&#8217;s great, but it assumes that Thunderbird&#8217;s export process and Google&#8217;s import process doesn&#8217;t transform the contacts in any way whatsoever and that&#8217;s a big assumption!  As an alternative, see <a href="http://www.zindus.com/faq-thunderbird/#toc-how-to-propagate-contacts" rel="nofollow">how to propagate contacts</a>.</p>
<p>4. the reason the addon retained your account details across uninstall/reinstall is because they&#8217;re stored in preferences.  To see your preferences, open Tools/Options/Advanced/Config Editor then type &#8220;extensions.zindus&#8221;.  You&#8217;re probably right that an uninstall of the addon should wipe those prefs too - will file a bug for this.</p>
<p>Thanks for the great feedback!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
