I'm getting an error on my Sitecore content delivery which is blocking the tracker from starting.
I feel like I've tried everything but must be missing something.
Sitecore version is 9.0.2 with topology XP1.
Error
17080 12:57:40 ERROR Cannot create tracker.
Exception: Sitecore.XConnect.Client.XdbModelConflictException
Message: One or more local models conflict with the xDB service layer.
'MyCustomModel, 0.2' does not match the remote version
Source: Sitecore.Xdb.Common.Web
at Sitecore.Xdb.Common.Web.Synchronous.SynchronousExtensions.SuspendContextLock[TResult](Func`1 taskFactory)
at Sitecore.XConnect.Client.XConnectSynchronousExtensions.SuspendContextLock(Func`1 taskFactory)
at Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.Initialize(XmlNode configNode)
at Sitecore.Configuration.DefaultFactory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper)
at Sitecore.Configuration.DefaultFactory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert)
at Sitecore.Configuration.DefaultFactory.CreateObject(String configPath, String[] parameters, Boolean assert)
at Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient(String clientConfigPath)
at Sitecore.Analytics.XConnect.DataAccess.XConnectDataAdapterProvider.ExecuteWithExceptionHandling[T](Func`2 func)
at Sitecore.Analytics.XConnect.DataAccess.XConnectDataAdapterProvider.<>c__DisplayClass15_0.<LoadContact>b__0()
at Sitecore.Analytics.XConnect.Diagnostics.PerformanceCounters.OperationPerformanceMonitorExtensions.Monitor[T](OperationPerformanceMonitorBase monitor, Func`1 operation)
at Sitecore.Analytics.Data.ContactRepository.LoadContact(ID contactId)
at Sitecore.Analytics.Tracking.ContactManager.LoadContact(Guid contactId, Boolean exclusive)
at Sitecore.Analytics.Pipelines.EnsureSessionContext.LoadContact.Process(InitializeTrackerArgs args)
at (Object , Object )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists)
at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
at Sitecore.Analytics.Pipelines.EnsureSessionContext.EnsureSessionContextPipeline.<>c__DisplayClass4_0.<Run>b__0()
at Sitecore.Analytics.XConnect.Diagnostics.PerformanceCounters.OperationPerformanceMonitorExtensions.<>c__DisplayClass1_0.<Monitor>b__0()
at Sitecore.Analytics.XConnect.Diagnostics.PerformanceCounters.OperationPerformanceMonitorExtensions.Monitor[T](OperationPerformanceMonitorBase monitor, Func`1 operation)
at Sitecore.Analytics.DefaultTracker.EnsureSessionContext()
at Sitecore.Analytics.Pipelines.CreateTracker.GetTracker.Process(CreateTrackerArgs args)
at (Object , Object )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists)
at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
at Sitecore.Analytics.Tracker.Initialize()
What I checked
I double checked all files listed in the documentation:
https://doc.sitecore.com/developers/90/sitecore-experience-platform/en/deploy-a-custom-model.html
- JSON file in previewsc_XConnectCollection\App_data\Models
- JSON file in previewsc_XConnectCollectionSearch\App_data\Models
- JSON file in previewsc_XConnectCollectionSearch\App_data\jobs\continuous\IndexWorker\App_data\Models
- JSON file in previewsc_XConnectMarketingAutomation\App_data\Models
- XML file in previewsc_XConnectMarketingAutomation\App_data\jobs\continuous\AutomationEngine\App_Data\Config\sitecore
- DLL file in previewsc_XConnectMarketingAutomation\App_data\jobs\continuous\AutomationEngine
- DLL file in Content Delivery environment together with the correct config file
All JSON model files are the same. Also when compared with a regenerated file.
The version in the JSON file matches the version of the model.
Filename: MyCustomModel, 0.2.json
And in code: new XdbModelVersion(0, 2)
And in the decompiled dll that was deployed to the CD environment.
I restarted the all IIS websites and the 2 services but that didn't solve it.
Questions
- Does the JSON model need to be in previewsc_XConnectMarketingAutomationReporting ?
- Does the JSON model need to be in previewsc_XConnectReferenceData ?
- Anything else I should verify?