zanonmark / Google-4-TbSync

This provider add-on adds Google synchronization capabilities to TbSync. Only contacts and contact groups are currently managed, using Google's People API.
Mozilla Public License 2.0
51 stars 7 forks source link

When TBird starts up, **all** the addressbooks sync in succession...ka-boom... #14

Open saleslogistix opened 3 years ago

saleslogistix commented 3 years ago

Environment: Tbird 78.11.0, latest version of this plugin (0.1.14?) plus latest version of TBsync. Three addressbooks, all in read-write mode synching to three separate accounts in Google. One addressbook has 410 contacts, the second 800, and a third 9000. The first two sync just fine in a few seconds. Guess what happens when you start TBird? The sync mechanism queues all three addressbooks in a row, instantly...and that third addressbook totally locks up Tbird for many many minutes. Many. Many. The Periodic Synchronization normally spreads out the load (the big addressbook runs once a week), but the counter for time evidently starts at zero with a new Tbird run, and at zero they all queue up. This renders Tbird inoperative for waaaaaaaaaaaayyyyyy tooooooooo looooong. Approach #1: have the sync start when the counter reaches the specified number of minutes, not at zero. Approach #2: use a random number generator to "seed" the timer for sync, so that (1) it never starts up right away and (2) doesn't start the queuing for all addressbooks immediately. Approach #3: if there's a way to have the sync process NOT overwhelm my poor 8-core 2.4 GHz 32 GB RAM system, that could work, too. Spreading the load over a much longer time....

zanonmark commented 3 years ago

Thanks for reporting.

Marked as enhancement, but I'm not sure this issue is 100% related to Google-4-TbSync: maybe part of it deals with TbSync itself.

MZ

p.s.: please be careful when using the sharp (#) sign, it's used to reference other issues...

saleslogistix commented 3 years ago

Actually...I mis-stated the issue. With my new info, this truly is just an enhancement. Turns out my original statement is not true. What actually is going on: the timers appear to be working properly, but if one of them happens to trip during a time when Tbird isn't running, when it does start again the sync will dutifully run upon startup. This makes it look like Tbird is broken. And if you have small, sensible contact lists, it's not that big a deal. But if you have one with 9000 contacts, this will go for many minutes. The work-around is (1) smaller lists and (2) very long auto-sync intervals.

zanonmark commented 3 years ago

Ok, keeping the issue freezed for a while because this involves TbSync too, and I'm waiting for major rewrite of it.

Thanks, MZ

gcalzo commented 2 years ago

+1 for me too! I had to dismiss gContactSync so now I'm using Google-4-TbSync and each time my TB 78.14.0 x86 is frozen until the end of my Google's contact (573 contacts) sync. I'm using TbSync also for my Exchange contacts since long time ago and I never had a freeze with them (322 contacts)

zanonmark commented 1 year ago

Hi all,

could You please check if this still happens with the latest 0.5.2?

Thanks, MZ