Set time-out values for report and shared dataset processing in Reporting Services

In Reporting Services, you can specify time-out values to set limits on how system resources are used. Report servers support two time-out values:

  • An embedded dataset query time-out value is the number of seconds that the report server waits for a response from the database. This value is defined in a report.

  • A shared dataset query time-out value is the number of seconds that the report server waits for a response from the database. This value is part of the shared dataset definition and can be changed when you manage the shared dataset on the report server.

  • A report execution time-out value is the maximum number of seconds that report processing can continue before processing is stopped. This value is defined at the system level. You can vary this setting for individual reports.

Most time-out errors occur during query processing. If you encounter time-out errors, try increasing the query time-out value. Make sure to adjust the report execution time-out value so that the value is larger than the query time-out. The time period should be large enough to complete both query and report processing.

Set a query time-out for an embedded dataset in a report

Query time-out values are specified during report authoring when you define an embedded dataset. For more information, see Report embedded datasets and shared datasets (Report Builder and SSRS).

To set the query time-out value in Report Builder:

  1. Right-click your database in the Report Data pane.
  2. Select Dataset Properties.
  3. On the Query tab in the Dataset Properties dialog box, enter the timeout value in the Time out field.

Screenshot of the Dataset Properties dialog box highlighting the Time out field.

Note

For Paginated Reports in Power BI, the default value is set to 600 seconds.

Set a query time-out for a data-driven subscription

The query time-out value for a data-driven subscription is specified on the Edit Subscription page. The value you specify determines how long the report server waits for query processing to complete when retrieving data from the subscriber data source.

Set a query time-out for a shared dataset

Query time-out values are specified in seconds on the report server when you create or manage a shared dataset. By default, this value is set to 0 seconds, which is the equivalent of no time-out value. For more information, see Manage shared datasets.

To set the query time-out value in the web portal:

  1. On the Browse page, select More Info > Manage.
  2. On the Properties Page, set the value in the Query time-out in seconds field.

Screenshot of the dataset Properties page highlighting the Query time-out in seconds field.

Set a report execution time-out

You can set the report execution time-out value to limit the amount of time that a report server uses to process a report. Report execution time-out values can be specified in the web portal. You can set a default value for all reports on the Site Settings page, and then override that value in the Properties page for a specific report. By default, the value is set to 1800 seconds. For more information, see Set report processing properties.

To set the report time-out value in the web portal for a specific report:

  1. On the Browse page, select More Info > Manage.
  2. On the Properties Page, select the default, custom, or indefinite timeout option in Advanced > Report time-out.

Screenshot of the report Properties page highlighting the Report time out options.

How report execution time-out values are evaluated

The report server evaluates running jobs at 60-second intervals. At each 60-second interval, the report server compares actual process time against the report execution time-out value. If the processing time for a report exceeds the report execution time-out value, report processing stops.

If you specify a time-out value smaller than 60 seconds, the report might still run. Processing would start and complete during the quiet part of the cycle when the report server isn't evaluating running jobs. For example, if you set a time-out value of 10 seconds for a report that takes 20 seconds to run, the report processes in full if report execution starts early in the 60-second cycle.

Note

You can set the RunningRequestsDbCycle setting in the RSReportServer.config file to change the frequency of how often running jobs are evaluated.