arckinteractive / en-issues

1 stars 0 forks source link

Check Sync Issues #43

Open ncadjan opened 6 years ago

ncadjan commented 6 years ago

We are still having some sync issues. Sang and I are tracking a few potential issues. Seems like we don't really have this solved. I can put more details in later today.

sang-entech commented 6 years ago

On this particular issue, I would like to discuss the current sync process:

  1. When you make a change to a contact in either system, WHEN (or how long thereafter) does it officially sync? (We had to manually sync on ENsight because it didn't pull the data from SF for a long time.)
  2. Sync processes - What & When. (It was mentioned that there are multiple sync frequencies.)
ncadjan commented 6 years ago

Here is a sample of what is happening:

  1. Kate Dennis' email did not sync over. I didn't fix this one. http://ensight.executivenetworks.com/settings/user/KDennis?highlight=Kate%2A+Dennis%2A
  2. Waddie Grant was added to SF and his record was created in ENsight. However, he was not given any network memberships in SF. When we discovered this, I added him to EN Staff and Staff Net. These changes did not sync over. I had to manually sync. Even after that, his Role stayed as Member and he was not given the Staff role. I had to modify that.

I will look for other issues.

beck24 commented 6 years ago

Will see if I can get Billy to chime in on this as he's the most knowledgeable about the full process.

That said, it does hourly updates for on-the-fly changes, and then a full sync overnight. For the specific things referenced we'll need to dig into the logs to see what it's doing

bgunn commented 6 years ago

I am just making a guess on Kate since I do not see any sync errors. The image below is from SF. Looks like the record was added and then the email changed and that from the issue being reported, the changed email did not come over. On the Ensight side her email was blank so I am guessing that the salesforce record was initially created without an email. There is possibly a bug here that if email is left blank future email sync is broken because email address is used as a key in some places and an empty email likely breaks a query. I clicked the Sync button for Kate and email synced over. I would estimate 1.5 hours to fix this bug when you want it fixed. Possibly it is low priority unless your workflow often involves adding users without an email address.

contact__kate_dennis___salesforce_-_enterprise_edition

For Waddie, the sync process by design ignores all EN Staff members for group memberships however if the contact status is set to EN Staff the users role should be updated during the next full nightly sync (not hourly).

sang-entech commented 6 years ago

Can we please review the syncs with me. I don't think the initial sync and the hourly sync is working all too well. Is it even ON? We had another scenario where Assistant replacement for member didn't sync over. (Waited over the 1 hour threshold.) When I did the manual sync, it was fine. (Changed from SF.)

sang-entech commented 6 years ago

Hi Billy,

This contact is for the sync issue (possibly unilateral from ENsight to Salesforce) test case, discussed last night. I did not manually sync it.

https://na62.salesforce.com/0036000001DJwbJ Assistant: Angie is the updated person. (correct in SF) http://ensight.executivenetworks.com/profile/AHeirman?highlight=Amy%2A+Heirman%2A ENsight is still showing Letty Corral.

Please check to see if this contact's Assistant fields were switch to uni-lateral sync.

Thanks, Sang

sang-entech commented 6 years ago

Hi Billy,

"Active - Open" test case,

Contact Name = "Jack TEST https://na62.salesforce.com/0030e00002EVGWk?srPos=0&srKp=003

Johnson & Johnson Membership Record - M-050893 https://na62.salesforce.com/a040e00002VVuhg We converted EXISTING "Active Open" record to "Active"

bgunn commented 6 years ago

The issue of Amy Heirman's assistant not syncing over during the hourly or nightly syncs was a bug that was affecting sync for most records. Your comment on our call that it didn't appear to be working at all was correct.

From the logs it did appear to be working because it was running and processing member records however it was not the correct records. I am still trying to determine if this was a change in the Salesforce API or a change in the Salesforce query however I did fix the issue by modifying the Salesforce query in code.

I am manually running a 180 day sync (normal is 7 days) so if you see a spike in API calls that is why. I suspect the bug popped up in the last 30 - 60 days however syncing back 180 days will make sure that we are fully in sync.

bgunn commented 6 years ago

Turns out this issue was a continuation of the issue related to handling membership records without an attached contact. Both issues look to be fully resolved now and when an open - active record gets a contact assigned as in the Jack TEST example you provided, the user is correctly added/updated in Ensight.

sang-entech commented 6 years ago

Thanks Billy,

So moving forward, any new edits to contacts should sync via the initial sync, hourly sync, and/or nightly sync? And we can continue to use the "Active - Open" record (without a contact) moving forward? (I'm going to have Jack remove the "Jack TEST" record.)

Should we still be concerned about the uni-lateral sync? If so, could you give us a quote on how we should rectify that scenario as discussed on the call. And a separate quote on removing the uni-lateral feature altogether. I want Nancy the option on choosing which is best for us.

Please let Nancy know and she can get that approved immediately. This is our priority #1 for us.

Thanks again,

Sang

sang-entech commented 6 years ago

Oops.. sorry guys.. pressed the wrong button.

bgunn commented 6 years ago

Hi Sang. So yes, contacts that have been changed on Salesforce should sync during the next hourly run and contacts that have changed anytime in the last 7 days should re-sync nightly. The Active-open record should be ignored now if there is not a contact assigned and when it gets a contact assigned it will sync. Real word use will test this so if you see sync issues let me know.

Now, regarding the bi-directional syncing that becomes un-directional after a field has been edited on the Ensight side I did find some code that removes all the "nosync" metadata when Elgg (the Ensight framework) upgrade is run. So anytime upgrade is run (Usually an Arck person would do this after a code update) a method called en_salesforce_remove_nosync() is triggered which removes all the nosyn attributes restoring sync from SF to Ensight. I sent a note to Paul and Matt asking about this since I am not familiar with it. I suspect someone wanted a way to allow SF to become the source of truth again at the click of a button.