Question

I have a data driven subscription which each time it runs shows a "pending" status in the Report Manager. Then after a little bit it errors with

Error: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. The statement has been terminated.

I am not doing anything extraordinary here. My sproc for retrieving users only returns 2 records (and executes instantly in Management studio). The data for the report isn't anything fancy either. It's pulling in about 3 records from 3 data sources - all very straightforward selects based on the ID passed in through the parameters.

When I set up this report to send in a regular subscription, it works fine. It's only when I make it data driven that it times out.

The timeout in my config is set to the default (120 seconds).

Here's what the logs are saying.

ReportingServicesService!dbpolling!4!12/20/2010-14:52:03:: EventPolling processing item 3c45f091-aab6-4354-bd1e-e5a8a8103391
ReportingServicesService!dbpolling!c!12/20/2010-14:52:03:: EventPolling processing 1 more items. 1 Total items in internal queue.
ReportingServicesService!library!4!12/20/2010-14:52:03:: Schedule fc2dd7c4-ae29-4e20-a24f-e6d7ee04686d executed at 12/20/2010 2:52:03 PM.
ReportingServicesService!schedule!4!12/20/2010-14:52:03:: Creating Time based subscription notification for subscription: 8a70b89a-bcea-403a-a200-ed0b6e4bc4ab
ReportingServicesService!library!4!12/20/2010-14:52:03:: Schedule fc2dd7c4-ae29-4e20-a24f-e6d7ee04686d execution completed at 12/20/2010 2:52:03 PM.
ReportingServicesService!dbpolling!4!12/20/2010-14:52:03:: EventPolling finished processing item 3c45f091-aab6-4354-bd1e-e5a8a8103391
ReportingServicesService!dbpolling!4!12/20/2010-14:52:03:: EventPolling processing item 63c3c8af-b3e5-4822-bb17-73f5f1b9fecc
ReportingServicesService!dbpolling!c!12/20/2010-14:52:03:: EventPolling processing 1 more items. 1 Total items in internal queue.
ReportingServicesService!dbpolling!4!12/20/2010-14:52:03:: EventPolling finished processing item 63c3c8af-b3e5-4822-bb17-73f5f1b9fecc
ReportingServicesService!library!d!12/20/2010-14:52:33:: e ERROR: Error processing data driven subscription: System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
The statement has been terminated.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at Microsoft.ReportingServices.DataExtensions.SqlCommandWrapperExtension.ExecuteReader(CommandBehavior behavior)
   at Microsoft.ReportingServices.Library.DataDrivenSubscriptionHandler.DataDrivenSubscriptionWorker(Object o)

I tried making a new data source using the local administrator account (who is also the sa) and I still get the timeout. This report is nothing special. It's actually just formatted text with little pieces of data. I'm using SSRS to handle sending formatted e-mails. The only concern I do have is that the machine running SSRS only has 2.0 GB ram. Could that be causing the timeout? But then why is it that when I execute the report for one user, it's fine, but for 2 users it goes kablooey?

Was it helpful?

Solution 2

The solution I found was here. I set up both the subscription and report data source to use a windows authenticated user so that the report could be run unattended. The default data source that worked in BIDS and in the Report Manager were not set up to allow unattended report runs.

OTHER TIPS

Can you set up a trace on the database servers to see if you're getting something unexpected on the data source servers?

You can also monitor the memory being used by the IIS process in perfmon, but from what you describe, I would think your server could make this report. BUT, maybe you're generating a massive PDF? SQL 2005 can have trouble doing such things.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top