XConnect IndexWorker error “Tokens are incompatible, they have different set of shards.”

Recently, I had restored a “production” backup of the master and core databases from a Sitecore 9.0 Update-1 instance to my local SQL server installation. After that, the Sitecore log started filling up with the exception:

Sitecore.XConnect.XdbSearchUnavailableException Message: The HTTP response was not successful: InternalServerError.

Continue reading “XConnect IndexWorker error “Tokens are incompatible, they have different set of shards.””

Go home Core database, you’re drunk.

Recently, after pulling the latest changes from my team, my local Sitecore installation started showing every item duplicated. Not only the LaunchPad was behaving like that, but also the Content Editor.

This issue only appeared in local Sitecore installation. Azure environments (DTAP) where not reproducing this issue. What was happening?

Continue reading “Go home Core database, you’re drunk.”

Applying personalization per host name

Recently, we had a requirement where we needed to personalize content based on the current host.

The requested scenario was: visitor can access the same site from different hosts. For example: pension.company.nl, insurance.company.nl, mysafety.company.nl. Based on the current host, the visitor should see a different icon and text on the page.

How did we meet this requirement?

Continue reading “Applying personalization per host name”

An example of unit testing with Sitecore

I have been studying unit testing and investigating how I can use it on Sitecore projects. One good usage I discovered (despite all the extra work now I have to setup a unit test project) is writing a code that uses Sitecore API and I can actually trust.

In this post, I give an example of how unit testing can speed up your development process and give you extra reliability on your code.

Continue reading “An example of unit testing with Sitecore”

Publishing Service: Scheduled publishing

Publishing Service enables you to schedule tasks through the task scheduler. It comes with the PublishTask and PublishJobCleanUpTask default tasks. The good news is that we can create custom scheduled tasks as well.

In this post, we are going to create a scheduled publishing task which on a given Interval queues a new publish job.
Continue reading “Publishing Service: Scheduled publishing”