Troubleshooting Sitecore Search Ingestion API issues


Overview

Sitecore Search is actively monitoring and resolving ingestion API issues. Sometimes customers might see ingestion API errors listed under their API push source in their Customer Engagement Console (CEC). There are some self-service research steps that can be done.

 

Scenario 1. How to check the status of the update

Ingestion API returns an incremental_update_id which is more of an acknowledgement id, that does not mean that updates happened in the system. There is a status endpoint that can be used to check the status of the update.

Solution

To check the status of Incremental Update via API while making push requests use:

curl --location 'https://<base-url>/ingestion/v1/domains/<domain-id>/sources/<source-id>/entities/<entity>/status/<incremental_update_id>' \ --header 'Content-Type: application/json' \ --header 'Authorization: <API_KEY>'

Response samples:

{"status":"finished"}
or Response empty then request is not found in our system please retry. {}

 

Scenario 2. Ingestion of some documents fails

Ingestion of some documents might fail after adding more locales after a push API source has been created. In the initial API push setup, we had not accounted for locales being added after source creation.

Solution

To mitigate the issue, you can archive the current source that is showing errors and recreate the source with all locales defined in the initial source setup.

 

Scenario 3. CEC job status says "failed" but URL details for individual URL says "Successfully indexed"


 

 

Clarification

For achieving efficiency, we batch incremental updates. If the overall job status is "failed" then all the updates in the batch are failed. Metrics and URL details are aggregation of different steps executed in the batch. Even though URL details say that it was "Successfully indexed" it was not successful as overall job failed. In future we do plan on improving this so we can get the actual status of each incremental update. Status endpoint gives the correct status of every incremental update.