The reset method worked just fine on our test server (pretty much the same installation, but much lower amount of pages).
But when trying to do the same thing on our production server, I got an error message: “The operation has timed out”.
This happens approximately one minute after starting the application pool.
ERROR SearchSettings: Could not reset index 'default' for service uri 'http://…/IndexingService/IndexingService.svc/reset/?namedindex=default&accesskey=local'.Message: The operation has timed out at System.Net.HttpWebRequest.GetResponse() at EPiServer.Search.RequestHandler.MakeHttpRequest(String url, NamedIndexingServiceElement namedIndexingServiceElement, String method, Stream postData, Action`1 responseHandler) at EPiServer.Search.RequestHandler.ResetIndex(String namedIndexingService, String namedIndex)
The service succeeds to delete old index files and creates new segment files in Index/Main and Index/Ref folder, but no other index files.
I assume that it never succeeds to build index correctly because the operation times out.
After that happens, the error message gets logged approximately every 2 minutes a couple of times.
I have tried to change configurations in web.config and even some settings on the server, but no luck. The operation still gets timed out.
Any suggestions what I can do to solve this, or at least debug it somehow?
Is it possible that the EPiServer.Search.RequestHandler overrides “timeout” settings somehow so that my configurations get ignored?
Steps that I tried and did not help:
I added executionTimeout="3600" in web.config, first in IndexingService location path, then in all other locations just to be surE
I changed some iis settings for the application pool and the webpage (ShutdownTimeLimit, StartupTimeLimit, ConnectionTimeout)
I deleted the Index folder myself and emptied the [tblIndexRequestLog] table.
I added closeTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" to the custom binding in <system.serviceModel>
I even tried to change the override of the CreateServiceHost method in IndexingService.svc with defining OpenTimeOut, CloseTimeOut, SendTimeout, ReceiveTimeout
Problem with reseting index – “The operation has timed out”
I am having a problem with reseting index for a quite big website (5 domains, 6400 pages).
The reset method is in SearchInitialization class and happens when I restart the application pool.
public void Initialize(EPiServer.Framework.Initialization.InitializationEngine context)
{
EPiServer.Search.SearchHandler.Instance.ResetIndex("default");
}
The reset method worked just fine on our test server (pretty much the same installation, but much lower amount of pages).
But when trying to do the same thing on our production server, I got an error message: “The operation has timed out”.
This happens approximately one minute after starting the application pool.
ERROR SearchSettings: Could not reset index 'default' for service uri 'http://…/IndexingService/IndexingService.svc/reset/?namedindex=default&accesskey=local'.Message: The operation has timed out at System.Net.HttpWebRequest.GetResponse() at EPiServer.Search.RequestHandler.MakeHttpRequest(String url, NamedIndexingServiceElement namedIndexingServiceElement, String method, Stream postData, Action`1 responseHandler) at EPiServer.Search.RequestHandler.ResetIndex(String namedIndexingService, String namedIndex)
The service succeeds to delete old index files and creates new segment files in Index/Main and Index/Ref folder, but no other index files.
I assume that it never succeeds to build index correctly because the operation times out.
After that happens, the error message gets logged approximately every 2 minutes a couple of times.
I have tried to change configurations in web.config and even some settings on the server, but no luck. The operation still gets timed out.
Any suggestions what I can do to solve this, or at least debug it somehow?
Is it possible that the EPiServer.Search.RequestHandler overrides “timeout” settings somehow so that my configurations get ignored?
Steps that I tried and did not help: