SSRS Reports timed out with '503' error | SharePoint 2013 |

I was working with a customer who has issue with SSRS reports which keeps in spinning for around 2 minutes and end up with throwing following error in SharePoint 2013 farm environment. But the normal reports are generating successfully which takes less than a minute to load.

 

"Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 503"

and you may see following time out exception in ULS Logs...

08/15/2014 10:59:49.66* w3wp.exe (0x1130) 0x2C78 SharePoint Foundation Service Connections ev2x Verbose ...om the socket did not complete within the allotted timeout of 00:01:00. The time allotted to this operation may have been a portion of a longer timeout. ---&amp;gt; System.Net.Sockets.SocketException: The I/O operation has been aborted because of either a thread exit or an application request at System.ServiceModel.Channels.SocketConnection.HandleReceiveAsyncCompleted() at System.ServiceModel.Channels.SocketConnection.OnReceiveAsync(Object sender, SocketAsyncEventArgs eventArgs) --- End of inner exception stack trace --- at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result) at System.ServiceModel.Channels.ConnectionStream.ReadAsyncResult.End(IAsyncResult result) at System.Net.FixedSizeReader.ReadCallback(IAsyncResult transportResult)</ExceptionString>...

08/15/2014 10:59:49.66* w3wp.exe (0x1130) 0x2C78 SharePoint Foundation Service Connections ev2x Verbose ...<InnerException><ExceptionType>System.Net.Sockets.SocketException, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>The I/O operation has been aborted because of either a thread exit or an application request</Message><StackTrace> at System.ServiceModel.Channels.SocketConnection.HandleReceiveAsyncCompleted() at System.ServiceModel.Channels.SocketConnection.OnReceiveAsync(Object sender, SocketAsyncEventArgs eventArgs)</StackTrace><ExceptionString>System.Net.Sockets.SocketException (0x80004005): The I/O operation has been aborted because of either a thread exit or an application request at System.ServiceModel.Channels.SocketConnection.HandleReceiveAsyncCompleted() at System.ServiceModel.Channels.SocketConnection.OnReceiveAsync(Ob...

I had a deep drive in to research on this issue by making use of articles and my energetic lab and found this may due to the default timeout value in Request Management Service..

Basically, If the Request Management service is enabled, it manages all incoming requests by evaluating logic rules against the user requests in order to determine what\which action to take and which machine or machines (targets) in the farm should handle the request.

By default the Request time out value for Request Management service are as follows,

RequestTimeout : 00:01:40
RequestExecutionTimeout : 01:00:00

So the error throws from RM service for those reports who take more than 1 minute to generate the report.

If you do not have any defined rules in Request management Service other than the by default value, you may keep stop the RM service in your farm. If you would like to keep the RM Service running, then go ahead and increase the time out value by making use of following PowerShell script.

 

$waUrl = "URLofWEbApp"

$wa = Get-SPWebApplication $waUrl

$rmSettings = $wa | Get-SPRequestManagementSettings

$req=$wa.RequestManagementSettings

$timeout2= New-TimeSpan -minutes 5

$req.Requesttimeout=$timeout2

$req.update()

Happy Troubleshooting..