SSRS Report keeps Timing out

Corey Fleig 510 Reputation points
2026-09-09T23:22:25.3766667+00:00

I wrote an SSRS Report that runs a stored proc, outputs data to a shared drive as a TEXT file.

The file is 50MB, but sometimes it doesn't time out, sometimes it does. I have adjusted the timeout settings in both VS and in the SSRS subscription dialog. But still I can't seem to nail down the problem. The message is this:

Error: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

The only mod is that I changed the global config file to create pipes for delimiter, not commas. That shouldn't affect this. IS it size, or connectivity? The message appears immediately, so I thought connectivity, but I have no idea what's its complaining about. I have about 200 other scheduled reports that are flawless, but this isn't happening!

any thoughts?

SQL Server Reporting Services
SQL Server Reporting Services

A SQL Server technology that supports the creation, management, and delivery of both traditional, paper-oriented reports and interactive, web-based reports.


3 answers

Sort by: Oldest
  1. AI answer

    2026-09-09T23:22:41.9533333+00:00

    Most SSRS time-out errors occur during query processing. The first check is to make sure the query time-out and the report execution time-out are aligned correctly.

    1. Increase the dataset query time-out where the report is authored.
      • In Report Builder: Report Data pane → right-click the dataset → Dataset PropertiesQuery tab → set Time out.
      • For paginated reports in Power BI, the default is 600 seconds.
    2. If the report uses a shared dataset, set its server-side query time-out.
      • In the web portal: BrowseMore InfoManagePropertiesQuery time-out in seconds.
      • The default for a shared dataset is 0 seconds, which means no time-out.
    3. Increase the report execution time-out so it is larger than the query time-out.
      • In the web portal for a specific report: BrowseMore InfoManagePropertiesAdvancedReport time-out.
      • The default report execution time-out is 1800 seconds.
      • If the query time-out is higher than the execution time-out, SSRS can still stop processing before the query finishes.
    4. Be aware that report execution time-outs are evaluated every 60 seconds.
      • SSRS checks running jobs at 60-second intervals.
      • Because of that, behavior can appear inconsistent: a report can sometimes complete and sometimes be stopped depending on where it falls in that cycle.
    5. For large reports, reduce on-demand execution where possible.
      • Configure the report to run as a scheduled report snapshot.
      • Run it during off-peak hours.
      • For large outputs, rendering format matters: CSV, XML, and HTML are faster and use less memory than PDF or Excel.
    6. If the report is delivered by subscription, increase the subscription query time-out on the Edit Subscription page.
      • That setting controls how long the report server waits when retrieving data for the subscription.

    Based on the symptoms described, the most likely issue is not the delimiter change itself, but a mismatch between query time-out and report execution time-out, combined with the variability of large report processing. Since the error is intermittent, start by setting the execution time-out higher than the query time-out and then move the report to scheduled snapshot processing if it is still unstable.


    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

  2. Deepesh Dhake 1,165 Reputation points
    2026-09-10T03:18:20.8033333+00:00

    The error is the SQL query timing out (.NET CommandTimeout) - not connectivity, and not the VS or subscription timeouts you already adjusted. The setting to change is the dataset/data source query timeout. Try setting it to 0 and retest.

    The most likely cause is blocking or parameter sniffing, both of which fit the "usually fine, sometimes not" pattern. You can catch blocking with sp_WhoIsActive during a run, and test the sniffing theory with OPTION (RECOMPILE).

    Two things would help pin it down: does it fail after roughly 30 seconds or truly instantly, and how long does the proc take in SSMS with the same parameters?

    Was this answer helpful?

    0 comments No comments

  3. PiusR 0 Reputation points
    2026-09-10T09:39:01.6066667+00:00

    Worth to also check: After you have changed the global rsreportserver.config for the delimiter, did the report server app pool make a recycle? Because such a config change is restarting the service, so the first run(s) after that are having additional cold-start cost on top of the normal query time — this could explain why it is sometimes timing out and sometimes not, independent from the 3600s settings you have already adjusted. You can check the ReportServerService trace log timestamp of the failing run against the timestamp of the config change / app pool start, to confirm this.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.