7

We are seeing a lot of Depenendy Failures in Application Insights because some non exisiting Azure Search indexes are queried.

The following indexes on Azure search return a 404:

  • sitecore-marketing-asset-index-master
  • sitecore-marketing-asset-index-web
  • sitecore-testing-index
  • sitecore-fxm-web-index
  • sitecore-fxm-master-index

We've tried rebuilding the indexes using IndexCustodian.FullRebuild(ContentSearchManager.GetIndex(name)); but this doesn't create the index.

How can we create these indexes or prevent them from being queried?

6
  • what errors do you have on logs file? Commented Jun 29, 2017 at 14:10
  • After a restart we see 1 fatal: FATAL [Experience Analytics]: Failed to synchronize segments. Message: Value cannot be null.
    – Luuk
    Commented Jun 29, 2017 at 14:21
  • 1
    I wonder if marketing definitions need to be deployed... see doc.sitecore.net/sitecore_experience_platform/developing/… Commented Jun 29, 2017 at 15:13
  • is it your solution based on a Habitat cloned repository ? Commented Jun 29, 2017 at 18:23
  • It's not cloned from Habitat, but we cherrypicked some components
    – Luuk
    Commented Jun 30, 2017 at 6:18

2 Answers 2

4

Why are there some missing indexes?

This happens when there are no items to add to the index. To create an index it is required to create an index schema. The schema is created dynamically based on the fields of the items that are going to be added to the index. As there are no items to add, the schema is not created as well as the index.

Why there are queries to the index which does not exist?

Different parts of Sitecore functionality may rely on the index in question. The index will be still queried every time to check if it is created and if there are any items in it.

Can I manually create these empty indexes?

Yes, however they will probably get deleted next time a rebuild is kicked off. Azure Search does not allow to modify the schema of the existing fields but only allows to add new fields to the schema. However, the schema is strictly limited to 1000 fields only. So the indexer will first delete the index and then try to recreate it if it can find any fields on the index.

Can I add dummy items for it to create the indexes?

Yes!

sitecore-marketing-asset-index

  1. Create a media item or just use the default /sitecore/media library/Default-Website/sc-logo item
  2. Create an asset under /sitecore/system/Marketing Control Panel/Taxonomies/Asset if you don't have any already
  3. Set an asset in the Marketing asset field of the media item.
  4. Assign the Download event to this media item: Content Editor -> Media item -> Analyze tab -> Attributes -> Events -> Download
  5. The "Deploy" tab of the media item should now show, you can then click it to deploy the marketing asset (which in turn will index the new item).

sitecore-fxm-index

  1. Create a dummy domain matcher item under /sitecore/system/Marketing Control Panel/FXM
  2. Set the domain to a dummy value http://dummy
-1

On our infrastructure (Sitecore 9 Update 2, with Azure Search) we were seeing thousands of 404 errors for sitecore-fxm-web-index (below over a 30mins period).

I tried rebuilding the indexes, and redeploying the marketing definitions and in the end the only thing that fixed the issue was creating a "Test" FXM item with nothing in it, publishing that to Web DB, and then rebuilding sitecore-fxm-web-index.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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