Gravatar for alexlin@inserso.com

Question by exodues, Mar 8, 2017 12:19 PM

Rebuilding Coveo Index hang at the end and nothing was accomplished

Currently, the Coveo diagnostic page shows all green and the search is Coveo search returns results based on older index.

Now we just updated the crawling root for the Coveo search index and tried to rebuild the index from Sitecore client. The rebuilding index in Sitecore will always hang for all three Coveo indexes (master, web, pub) in both our DEV and PROD environment (each has CM/CD). At the end, the index is never updated.

There is no error messages in the Sitecore application log. If rebuilding the pub index with Coveo Admin tool, here's the error from "Last Operation Log"

ERROR    12:04:22 PM ... at Coveo.CES.CustomCrawlers.CustomCrawler.RefreshThread()               Sitecore Search Provider        Coveo_production_index - ONR82CMS
ERROR    12:04:22 PM ... Coveo.CES.CustomCrawlers.CrawlerFatalException: No documents were crawled.              Sitecore Search Provider        Coveo_production_index - ONR82CMS
ERROR    12:04:22 PM Queue Error: No documents were crawled.             Sitecore Search Provider        Coveo_production_index - ONR82CMS
ERROR    12:04:22 PM Error with ID 'NO_DOCUMENT_INDEXED': No documents were crawled.
Exception while processing an item: -> Coveo.Connectors.Sitecore2.SitecoreWebService.Exceptions.CoveoSoapException: Could not find configuration node: databases/database[@id='production'] at Coveo.Connectors.Sitecore2.SitecoreWebService.SitecoreWebService.TryCatchWrapper[T](Func`1 p_Action, String p_MethodName) at Coveo.Connectors.Sitecore2.SitecoreWebService.SitecoreWebService.GetBinaryDataAtUri(String p_ItemUri)

If rebulding the coveomasterindex, the Coveo console shows similar error:

Exception while processing an item:  -> Coveo.Connectors.Sitecore2.SitecoreWebService.Exceptions.CoveoSoapException: Could not find configuration node: databases/database[@id='master']
   at Coveo.Connectors.Sitecore2.SitecoreWebService.SitecoreWebService.TryCatchWrapper[T](Func`1 p_Action, String p_MethodName)
   at Coveo.Connectors.Sitecore2.SitecoreWebService.SitecoreWebService.GetBinaryDataAtUri(String p_ItemUri)

We are really puzzled…..

1 Reply
Gravatar for jflheureux@coveo.com

Answer by Jean-François L'Heureux, Mar 8, 2017 12:48 PM

In the indexing process, large files has to be downloaded by CES instead of being sent through RabbitMQ. So CES calls back a web service in the Sitecore instance (or instances if you are using a load balancer) at the address specified in the <serverUrl> configuration element to download the data to index.

I guess you have configured the <serverUrl> to your Sitecore CDs load balancer instead of the CMs. And I guess neither the production or master databases are available in those CD servers.

You would either have to adjust the databases and indexes names to match across your servers or to change the <serverUrl> value to point to your CM servers.

I hope this helps.

Jeff

Ask a question