I've seen this personally happen in only one instance, and in that case it was associated with a large number of leads being converted to contact in batch (but using standard conversion functionality in SFDC). It certainly wreaked havoc.
After getting to tier 3 support, the explanation was that the problem can arise in batch conversion scenarios, where the large volume of records interferes with the order of operations in the sync process. Each type of sync action (e.g., create lead, convert lead, create contact) has separate queues within the sync cycle, and each will process records in batches. With a large volume of records it is possible that the batches don't align - meaning that the new contact created as the result of conversion can be processed in the sync before the converted lead action for the same record.
In this case you will temporarily have a new contact duplicating the lead (triggering all Person is Created workflows), and then as the converted lead action is processed Marketo will clean it up and merge the records together. You can detect that it occurred however because the activity log of the merged record will retain two "Person is Created" activities. The support engineer took me through the logs so I could see that this was happening.
The recommendation from support was to deactivate the global sync when doing any mass conversion and then reactivate it afterwards, which would ensure that the correct order of operations is preserved once the sync is re-enabled. I have not tested this to ensure it works - I also wonder why that advice isn't more widely publicized. Note I have also seen reports in community of this happening in non-batch scenarios, perhaps the examples in this thread are among them.
I would recommend Sara and Ankit to continue to push it through support if you see this happening using a standard conversion process for individual records because as Greg said it's definitely not expected behavior. Hopefully if more people report it then the underlying issue that allows this to happen could be resolved.
Hi Justin,
Thanks for sharing this information.
I could test this theory for us all today. So I disable my sync, perform a bunch on Lead Coverts, then turn the sync back on, then we'll see if I catch any irregular merges. Stay posted!
This is linked to these threads as well:
Marketo / Salesforce Sync Limits & Priority Info
Unknown cause of lead merge (leaddb) - Expert knowledge required!
We're doing major merge/converting cleanup and we're triggering this scenario. I can confirm there is a race condition where if the converted Lead to Contact sync's to Marketo before the Converted (ghost) Lead does, then Marketo creates the new Contact as a new person, then later realises that the Lead was a conversion, then it performs a Merge on the new contact to the old Lead, which causes triggers to fire again. Some trigger can be excluded by adding the reason contains "Merge (leaddb)" criteria, but others can't be avoided like our single global trigger for "Person is Created" which re-triggers our lead lifecycle.
From what I have learned, it's caused by a setting on the instance. Read the last comment on this thread from Denise Greenberg : Marketo / Salesforce Sync Limits & Priority Info
This is a pretty serious flaw in the sync logic. I have an open support ticket. I'll let you know if we solve it.
It seems that even though the "Lead: pull conversions" sync call should fire before "Contact updates" when this setting is enabled on the instance, that linear run time dependency is not being respected.
It's completely random as well. We have a program setup to "catch" these records in the act.
Also to confirm. I tested the conversion being done from RingLead in batch, Ringlead, single records one by one, and Manual conversion within SF and was able to trigger the issue in all three scenarios.
Hi Sean Richards
Thanks for the detailed follow-up on this.
Based on the thread you linked to, it sounds like there be two issues at play - the first is the use of multi-batch queuing (per Denise's final post in the thread) which could cause order of operations issues with even individual records. Maybe you have that enabled on your instance?
I am reasonably certain we did not have MBQ enabled on the instance where I ran into this issue and we only experienced it in bulk. This suggests that even without MBQ, the issue with the batches not aligning can still possibly cause this issue at larger volume.
I look forward to any feedback you get from your support case.
Just getting back to you on this Justin Norris, my outcome and solution is documented here: https://nation.marketo.com/thread/49771-unknown-cause-of-lead-merge-leaddb-expert-knowledge-required
Thanks for the follow-up Sean Richards and for sharing your results. Very interesting!
Hi Sara,
As Greg mentioned it is not a standard process, because for Marketo lead or contact is just an status, it does not have any distinction as we see in SFDC. So if you convert a lead to contact in SFDC, then Marketo will just update the SFDC status as contact.
And if duplicate values are created then i think instead of Marketo real issue is with SFDC, check the duplicate values in SFDC.
-AC