Coveo for Sitecore 5 is now available!

Security Provider Error Something Went Wrong on the Server

On-Premises only 

The symptoms and resolution mentioned in this article are only for the Coveo for Sitecore on-premises edition.

Symptoms

  1. When performing a query in the JavaScript Search UI, it may return no results or display the error: “Oops! Something went wrong on the server. If the problem persists contact the administrator.”
  2. When looking at the CES Administration Tool, under Status > Overview > System State, you may see the error: A security provider is not properly configured.
  3. When looking at the Coveo system logs (from the CES Administration Tool > Logs > System or directly in the file [Index Drive]\CES7\Logs\System_YYYY-MM-dd.log), you may see errors similar to these ones:

    212254270075164067|ERROR|2013-12-19|10:29:28|0|Security Provider "Sitecore Security Provider for {MachineName}-{SitecoreInstanceName}" failed to start: Security Provider failed to start, last received status was: Created|||
    212254270075164141|ERROR|2013-12-19|10:30:16|0|NodeId #7: An error occurred while initializing the Blade "Sitecore Security Provider for {MachineName}-{SitecoreInstanceName}" (ID #9): Unexpected exception in method 'InitBlade': System.Net.WebException: The operation has timed out ---> System.Net.WebException: The operation has timed out   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)   at Coveo.CNL.WebServices.WebServiceUtilities.InvokeWithCallBack(InvokeMethodDelegate p_InvokeMethod, SoapCallBack p_SoapCallBack, String p_MethodName, Object[] p_Parameters)   at Coveo.Connectors.Sitecore2.SitecoreWS.SitecoreWebService.GetSiteDatabase(String p_TargetSite)   at Coveo.Connectors.Sitecore2.Connection.Sitecore2Connection.GetSiteDatabaseName()   at Coveo.Connectors.Sitecore2.Configuration.Sitecore2ConnectorConfiguration.InitializeDatabase(GetDefaultValueDelegate p_GetDatabaseNameDelegate)   at Coveo.Connectors.Sitecore2.Connection.Sitecore2Connection.Initialize()   at Coveo.CES.CustomCrawlers.Sitecore2.Security.Sitecore2SecurityProvider.InitSecurityProvider()   at Coveo.CES.SecurityProviders.Framework.SecurityProviderBase.<>c__DisplayClass1a.<ExecuteMonitoredCall>b__19()   --- End of inner exception stack trace ---   at Coveo.CES.SecurityProviders.Framework.SecurityProviderBase.ExecuteMonitoredCall(MonitoredCall p_MonitoredCall)   at Coveo.CES.SecurityProviders.Framework.SecurityProviderBase.InitBlade(BladeDefinitionConfig p_BladeConfig)|||
    212254270075164231|ERROR|2013-12-19|10:40:28|0|Indexing is paused because of a security provider error (class Merlin::SecurityProviderOnErrorException: Security Provider "Sitecore Security Provider for {MachineName}-{SitecoreInstanceName}" failed to start: Security Provider "Sitecore Security Provider for {MachineName}-{SitecoreInstanceName}" failed to start: Security Provider failed to start, last received status was: Created). Make sure that the security provider is configured properly to resume indexing.|||

Cause

The Sitecore security provider is either configured incorrectly, or it was unable to access the associated Sitecore instance.

If you also see the error The operation has timed out, it most likely means that your CES instance started before the Sitecore instance, making the latter unreachable by the Sitecore security provider configured in CES.

Resolution

  1. Try reloading the problematic Sitecore security provider:
    1. Access the Security Providers section of the CES Administration Tool (Configuration > Security > Security Providers).
    2. Edit the Sitecore security provider (typically named Sitecore Security Provider for {MachineName}-{SitecoreInstanceName}).
    3. Click on Apply Changes so that the security provider is simply reloaded.
    4. Validate that there are no more security provider error shown in the CES Administration Tool (Status > System State).
    5. Validate that the original error no longer appears in the JavaScript Search UI when you perform a query.
  2. Try fixing any erroneous parameter identified in the System logs (if applicable):
    1. Open your Coveo.SearchProvider.Custom.config file, which is located in the App_Config\Include\Coveo folder of your Sitecore instance.
    2. Edit the securityProviderName and/or serverUrl node to the correct value.
    3. Synchronize the configuration from the Sitecore Control Panel Coveo Search section.
    4. Validate that there are no more security provider errors shown in the CES Administration Tool (Status > System State).
    5. Validate that the original error no longer appears in the JavaScript Search UI when you perform a query.