Some Google contacts missing in eMClient

I discovered today that at least 3 of my contacts are missing from eMClient. I verified via my Chrome browser that these contacts are still in my Google contacts and I verified they also appear fine on my Samsung phone. I don’t know how long this has been happening but it’s been at least a few days. How does this get fixed?

Make sure that only the top-level folder, Contacts, is ticked in eM Client. That will display contacts from that folder and all its sub-folders.

image

If that doesn’t help, right-click on that Contacts folder in eM Client and choose Properties > Repair. That should resync the contacts with Google.

The missing contacts were not in the Contacts “folder”. I had already checked that.

I did the Repair you suggested. All my contacts were gone from eMClient after that until I closed the app and re-opened it. Then I could see contacts being re-added (re-synced) in eMClient. However I know of at least several more contacts that are missing now. The Contacts > Properties showed eMClient had 680 items after it stopped climbing (I didn’t look at the count before the Repair). But my Samsung email app shows 977 Google contacts. I repeated the Repair process again and now I have 670 items. Not the results I was hoping for.

Then it must be one of the sub-folders that is not syncing.

Either it just hasn’t completed the sync, but will later, or there is some error. If you go to Menu > Operations and look in the Log tab for any errors that may give some clue as to what is wrong.

I cleared the log, did a Repair and then restarted eMClient again. There are again 670 items after the re-sync. Below is the resulting log but I have no clue what if anything went wrong or how to fix it.:

10/23/2020 2:34:30 PM Online state: changed to online due to NetworkAvailability
10/23/2020 2:34:30 PM [email protected] IMAP Synchronizing folder list
10/23/2020 2:34:30 PM [email protected] IMAP Synchronizing folder list
10/23/2020 2:34:31 PM [email protected] Google Calendar Synchronizing folder list
10/23/2020 2:34:31 PM [email protected] Google Contacts Synchronizing folder list
10/23/2020 2:34:32 PM [email protected] Google Calendar Synchronizing folder list
10/23/2020 2:34:32 PM [email protected] Google Calendar Synchronizing folder ‘/Tasks’
10/23/2020 2:34:32 PM [email protected] Google Contacts Synchronizing folder ‘/Contacts’
10/23/2020 2:34:32 PM [email protected] Google Calendar Synchronizing folder ‘/Calendar’
10/23/2020 2:34:32 PM [email protected] IMAP Synchronizing folder ‘/All Mail’
10/23/2020 2:34:32 PM [email protected] IMAP Synchronizing folder ‘/All Mail’
10/23/2020 2:35:00 PM [email protected] [Google Contacts] System.NullReferenceException: Object reference not set to an instance of an object.
at MailClient.Protocols.Gdata.ContactConvert.ToContact(Contact contact, IInteractionController controller)
at MailClient.Protocols.Gdata.ContactItemSynchronizer.ConvertContact(Contact contact, ContactsRequest contactsRequest, CancellationToken cancellationToken)
at MailClient.Protocols.Gdata.ContactItemSynchronizer.ContactsToItems(IEnumerable1 contacts, ContactsRequest contactsRequest, CancellationToken cancellationToken)+MoveNext() at System.Collections.Generic.List1.InsertRange(Int32 index, IEnumerable1 collection) at MailClient.Protocols.Common.ItemSynchronizeContext2.<>c__DisplayClass18_03.<Synchronize>g__FlushItems|1(Int32 threshold) at MailClient.Protocols.Common.ItemSynchronizeContext2.Synchronize[T,TUid,TVid](SynchronizationType synchronizationType, IEnumerable1 items, Func2 getUniqueId, Func2 getVersionId, Func3 hasChanged, Func2 isDeleted, Func2 convertItems, Action2 updateItem) at MailClient.Protocols.Gdata.ContactItemSynchronizer.Synchronize(IItemSynchronizeContext1 synchronizeContext, Folder folder, CancellationToken cancellationToken)
at MailClient.Protocols.Common.ItemSynchronizer2.<>c__DisplayClass37_1.<EnqueueSynchronize>b__6(WorkerStatus status, CancellationToken ct) at MailClient.Protocols.Gdata.GenericGdataCommand.Execute(WorkerStatus status) at MailClient.Commands.Command.Process(WorkerStatus status) EnqueuedStackTrace = at MailClient.Protocols.Common.ItemSynchronizer2.<>c__DisplayClass37_1.g__RunSynchronize|2()
at MailClient.Protocols.Common.ItemSynchronizer2.<>c__DisplayClass37_0.<EnqueueSynchronize>b__0() at MailClient.Protocols.Common.AccountBase.RunIfOnline(Action actionIfOnline, Action actionIfOffline) at MailClient.Protocols.Common.ItemSynchronizer2.EnqueueSynchronize(Folder folder, Boolean fast, CancellationToken cancellationToken, Action1 completed) at MailClient.Protocols.Common.ItemSynchronizer2.MailClient.Storage.Synchronization.IItemSynchronizer.Synchronize(Folder folder, SynchronizationPriority priority, Action1 completed) at MailClient.Storage.Application.ItemCollection2.Synchronize(SynchronizationPriority priority, Action`1 completed)
at MailClient.Storage.Application.Folder.Synchronize(SynchronizationPriority priority)
at MailClient.Storage.Application.Folder.Synchronize(Boolean forced)
at MailClient.Protocols.Gdata.GdataContactsAccount.Synchronize(SynchronizationPriority priority)
at MailClient.Protocols.Gdata.GdataContactsAccount.GoOnlineInt()
at MailClient.Protocols.Common.AccountBase.ChangeOnlineState(Boolean online, OfflineReason offlineReason)
at MailClient.Protocols.Common.AccountBase.GoOnline()
at MailClient.Accounts.AccountList.<>c__DisplayClass19_1.b__1()
at System.Threading.Tasks.Task.InnerInvoke()
at System.Threading.Tasks.Task.<>c.<.cctor>b__274_0(Object obj)
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
at System.Threading.Tasks.Task.ExecuteEntryUnsafe(Thread threadPoolThread)
at System.Threading.Tasks.Task.ExecuteFromThreadPool(Thread threadPoolThread)
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

I think with this kind of error there has previously been some success when removing the Gmail account from eM Client, then adding it again.

That didn’t help. I’m still at 670 items.

What I would do:

  1. In eM Client make sure Local Folders are visible by ticking the setting in Menu > Settings > General > Show Local Folders.

  2. Go to your Contacts section and create a new folder in Local Folders > Contacts. Call it G.

  1. Go to the Contacts folder in eM Client where the 670 contacts appear. Select them all and move them to the newly created Local Folder.

  2. Now the Google folder in eM Client should be empty, and only the missing 300 should appear in the Google Contacts web interface.

  3. In the web interface select all those 300 contacts and give them a new label like H.

  4. Restart eM Client and see if the H folder appears with the missing contacts.

  1. Move the contacts from the G and H folders back to the original Google Contacts folder (Probably My Contacts).

  2. If all fails and you lose everything, don’t panic. Go to the web interface for Google Contacts and restore your contacts to what they were yesterday.

image

Gary,

The problem with your last suggestion is that, even if it works, it offers no reason for why this is happening and gives me no confidence that this won’t happen again.

I worked in application development for 38 years so I’ve got a good feel for app problems. Most likely this issue is caused by a defect in the app or possibly a defect in a recent upgrade process (most likely to v8 which has also created other issues for me). If it is an app defect, it may or may not be caused by a certain data condition in my contacts data that the app is not handling well. In that case, I would hope that your developers have built enough debugging tools into the app to allow them to identify the data causing this to happen.

If you haven’t done so already, it is time for the developers to get involved with this issue to provide long-term resolution. I won’t be implementing your suggestion until I can be confident that this problem won’t happen again.

If you have a Pro License, you can contact eM Client directly for them to get involved. However, if you have a Free License, as per the license agreement you are not entitled to support from the company.

That’s fine. Take it or leave it.

I’ve never needed your Pro license since I only used two email accounts and didn’t have any desire for the extra product features Pro provided. Given my current issues, I did think today about getting Pro. But I’m not exactly sure how that would speed up any resolution. Please explain what would happen to my issues after I purchased a Pro license. Also please explain the difference between the one-time purchase and the lifetime purchase of Pro.

In the meantime, I tried some solutions of my own. I uninstalled v8 and reinstalled it. There was no change to the number of contacts (670). I then uninstalled v8 and installed v7. Lo and behold, I correctly have 1147 contacts now, which I subsequently found out are my 980 contacts plus 167 “Other Contacts” (not in the email client on my phone) that Google automatically saves for me. I hope this helps your developers whenever they finally get around to looking at this.

There are other reasons you might need a Pro License. If you are using eM Client for business, or have it installed on a business computer, then you must have a Pro License.

You would have access to VIP Support. That means they would view your logs and discover where the problem is, and solve it for you. They usually provide support by email, but can also access your computer remotely if needed.

A one-time purchase of a Pro License means it is valid for all of the current version. So all of version 8.x, but will not work with version 9.x. A lifetime license will enable you to use it with all future releases of the application, irrespective of version.

So there is more to this issue than just eM Client. Seems you phone does not sync all of the contacts either. :wink:

For eM Client version 8, the issue is given in the error that you posted above, but is beyond the abilities of us users (yes, we are all users here, not eM Client staff) to interpret.

1 Like

Just to clarify for you, the phone does sync all the contacts I entered into my Google address book. The other 167 contacts are ones Google automatically saves into “Other Contacts” on my account from my emails (and other places?) based on the default settings I have (this can be turned off). I didn’t even know this was happening until yesterday when I had to figure out where they came from (eMClient v7 does sync these “Other Contacts” too).