SQL Reporting 10 Minute Timeout
We recently ran into a situation where a long-running SQL report in a web application was timing out after 10 minutes.
It turns out there are A LOT of places that this timeout could be coming from:
- Your own .net web application session state
- Your application's explicit report timeout if specified in your code
- SQL Reporting Services's webservice session state
- SQL Reporting Services system properties has a default timeout (which happened to be the culprit in our case)
Thanks to John Gallardo, the solution was found here:
The following is copied from John's blog...
We replaced the
timeout with 3600 to ensure long running reports could execute for an hour.
timeout with 3600 to ensure long running reports could execute for an hour.
Copy the following and save it as
sessionTimeout.rss
sessionTimeout.rss
Public
Sub Main()Dim props() as [Property]props = new [Property] () { new [Property](), new [Property]() }props(0).Name = "SessionTimeout"props(0).Value = timeoutprops(1).Name = "SessionAccessTimeout"props(1).Value = timeoutrs.SetSystemProperties(props)End Sub
Then, you can run this script with the following command:
rs -i sessionTimeout.rss -s http://localhost/reportserver -v timeout="6000"
IMPORTANT: RESTART SQL REPORTING SERVICES AFTER YOU RUN THIS SCRIPT TO HAVE THE SETTING TAKE EFFECT.
