5

I had some trouble with xConnect at the beginning after I have installed Sitecore 9 Update 2. I had trouble with Sitecore xConnect Search Indexer Windows service particularly. It was a configuration issue at the end which caused service not to run for couple of days. Meanwhile xConnect was saving data in Contacts / Interactions table in SQL Server shard DBs.

When I fixed the issues with Search Indexer Windows Service, I am getting these exceptions and it's flooding my AppDomain log located under $path_to_your_xconnect_site$\App_data\jobs\continuous\IndexWorker\App_data\Logs.

Exception:

2018-08-09 10:13:07.158 +02:00 [Error] * [GetContactsChanges], Line 27. Errno 50000: Sync token is no longer valid for [Contacts] table. System.Data.SqlClient.SqlException (0x80131904): * [GetContactsChanges], Line 27. Errno 50000: Sync token is no longer valid for [Contacts] table. at System.Data.SqlClient.SqlCommand.<>c.b__174_0(Task1 result) at System.Threading.Tasks.ContinuationResultTaskFromResultTask2.InnerInvoke() at System.Threading.Tasks.Task.Execute() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Sql.Common.Extensions.DbCommandExtensions.<>c__DisplayClass1_0.<b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Sql.Common.Extensions.DbCommandExtensions.d__1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Sql.Common.Extensions.SqlCommandExtensions.d__1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Sql.Common.Extensions.SqlCommandExtensions.d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Collection.Data.SqlServer.Managers.SqlDataRecordsManager`2.<>c__DisplayClass75_0.<b__0>d.MoveNext() ClientConnectionId:0970f150-17f0-4f1a-b752-8974c0683f83 Error Number:50000,State:1,Class:16

Same exception but for [InteractionFacets], [ContactFacets] and [Interactions] is following this one with pretty much same stack trace.

Has somebody encountered similar problems? What was resolution?

5
  • did you manage to solve the problem? if yes would you please advise me about it?
    – AME
    Nov 29, 2018 at 10:37
  • I created new instance of Sitecore at the end cause rebuilding of collection database was not helping Nov 29, 2018 at 10:51
  • would you tell me how did you rebuild collection database? is it different than reloading the core db and rebuilding the xconnect search indexer service?
    – AME
    Nov 29, 2018 at 10:57
  • I have followed this article doc.sitecore.com/developers/90/sitecore-experience-platform/en/… @AmiraElEwady Nov 29, 2018 at 10:58
  • 1
    yes i also followed this article but still have same issue. However thanks alot for your help and quick response.
    – AME
    Nov 29, 2018 at 13:20

2 Answers 2

11

The indexer can no longer figure out all the changes saved to xConnect while it was down. This is why rebuilding the index is the only option at this point.

———

Full context: if you are using SQL server for your collection database, the indexer uses SQL Server’s change tracking feature to keep up to date with any incoming changes.

SQL Server only keeps changes for a limited amount of time (configurable, I think default deployments have it at 5 days) called the retention period

Since your indexer was down longer than the retention period, then SQL Server will no longer returns all changes.

2
  • i have the same issue, i tried reloading the core db and rebuilding the xconnect search indexer however i got the following: [Error] The attempt to recover from previous failure has not been successful. along with the same error again. Is there anything that i missed?
    – AME
    Nov 29, 2018 at 10:30
  • 1
    @AmiraElEwady one thing to have in mind when doing a rebuild is that it can take a while to finish. Since live indexing continues its retries, then you would still see the errors until the rebuild finished. That said, that attempt to recover message sounds like a Solr side thing. You might want to check all is looking good on the Solr side.
    – eglasius
    Nov 29, 2018 at 17:44
8

I ran into this a while ago but could not figure out how to fix it without a full reinstall.

However, recently @ezlateva and @jflarente figured out that you can fix this issue with an index rebuild of the xDB core. Note that this requires two cores: old and new. The steps required are specific to the search engine, but documentation has steps for Solr:

https://doc.sitecore.net/developers/xp/xconnect/xconnect-search-indexer/rebuild-index/rebuild-solr-index.html

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.