SSRS Query Timeout settings: rsreportserver.config verses RDL Query.Timeout

ssrs

I'm trying to understand the interaction between the SSRS DatabaseQueryTimeout (set at the server level, defaults to 120 – does this only apply to connections to the ReportServer internal database?)

RsReportServer.config Configuration File

and the RDL Query.Timeout setting (set in individual RDL, defaults to 30)

Setting Time-out Values for Report and Shared Dataset Processing (SSRS)

If I have an RDL with no setting defined, will it timeout at 30s or 120s?

Best Answer

The answer is in your first link:

DatabaseQueryTimeout - Specifies the number of seconds after which a connection to the report server database times out.

This setting only applies to the connections from the RS services to the RS databases, not for individual reports to their data sources. This makes sense given:

This value is passed to the System.Data.SQLClient.SQLCommand.CommandTimeout property

What if your data source is not SQL, what if it is Oracle or MongoDB or some other data source? This setting wouldn't exist for that connection object.

The answer to your question is, with no setting defined your timeout would be 30s.