0

We often see this kind of errors in SSRS log file. This seems like internal error happening inside SSRS engine. How can we debug this ? We are not getting any other relevant information when report fails.

library!ReportServer_0-1!2864!09/09/2016-00:28:15:: w WARN: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: An unexpected error occurred in Report Processing. ---> System.Threading.ThreadAbortException: Thread was being aborted. at Microsoft.Win32.Win32Native.SetFilePointerWin32(SafeFileHandle handle, Int32 lo, Int32* hi, Int32 origin) at Microsoft.Win32.Win32Native.SetFilePointer(SafeFileHandle handle, Int64 offset, SeekOrigin origin, Int32& hr) at System.IO.FileStream.SeekCore(Int64 offset, SeekOrigin origin) at System.IO.FileStream.Seek(Int64 offset, SeekOrigin origin) at Microsoft.ReportingServices.Library.PartitionFileStream.Seek(Int64 offset, SeekOrigin origin) at Microsoft.ReportingServices.Library.MemoryUntilThresholdStream.Seek(Int64 offset, SeekOrigin origin) at Microsoft.ReportingServices.Library.RSStream.Seek(Int64 offset, SeekOrigin origin) at System.IO.BufferedStream.Seek(Int64 offset, SeekOrigin origin) at Microsoft.ReportingServices.Rendering.RPLProcessing.RPLReader.ReadElementProps(Int64 startOffset, RPLContext context, Byte& elementType) at Microsoft.ReportingServices.Rendering.ExcelRenderer.Layout.LayoutEngine.RenderNewItem(IRowItemStruct item, Int32 top, Int32 topRow, IExcelGenerator excel, String pageContentKey, Dictionary2 sharedBorderCache, Dictionary2 sharedImageCache, Boolean& autosizableGrow, Boolean& autosizableShrink) at Microsoft.ReportingServices.Rendering.ExcelRenderer.Layout.LayoutEngine.RenderPageToExcel(IExcelGenerator excel, String key, Dictionary2 sharedBorderCache, Dictionary2 sharedImageCache) at Microsoft.ReportingServices.Rendering.ExcelRenderer.MainEngine.RenderRPLPage(RPLReport report, Boolean headerInBody, Boolean suppressOutlines) at Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream) at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.InvokeRenderer(IRenderingExtension renderer, Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream) at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer) --- End of inner exception stack trace --- at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer) at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.RenderReport(DateTime executionTimeStamp, ProcessingContext pc, RenderingContext rc, IChunkFactory yukonCompiledDefinition) at Microsoft.ReportingServices.Library.RenderLive.CallProcessingAndRendering(ProcessingContext pc, RenderingContext rc, OnDemandProcessingResult& result) at Microsoft.ReportingService webserver!ReportServer_0-1!2864!09/09/2016-00:28:16:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.UnhandledHttpApplicationException: , Microsoft.ReportingServices.Diagnostics.Utilities.UnhandledHttpApplicationException: The report server encountered an unhandled exception in HttpApplication. ---> System.Web.HttpException: Request timed out.
--- End of inner exception stack trace ---;

--------- UPDATE ----------

I see new error in log as

library!WindowsService_0!e88!09/09/2016-17:09:45:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: , An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database.; dbcleanup!WindowsService_0!e88!09/09/2016-17:09:45:: e ERROR: Error in CleanOrphanedSnapshots: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. ---> System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. library!WindowsService_0!e88!09/09/2016-17:09:45:: i INFO: Cleaned 0 batch records, 0 policies, 0 sessions, 0 cache entries, 0 snapshots, 0 chunks, 4 running jobs, 0 persisted streams, 0 segments, 0 segment mappings, 0 edit sessions.

--------- UPDATE ----------

After updating all the timeout to 12hr and Put DO NOT TIMEOUT setting on SSRS site setting, we see diff error now.

So far we have checked execution log and it shows no error. Below error is found inside ssrs log file. Server has 32gb memory and we run on 64bit OS. This report sometimes is generated fine and its 200MB in size.

httpruntime!ReportServer_0-2!58dc!09/12/2016-23:26:45:: e ERROR: Failed in BaseWorkerRequest::SendHttpResponse(bool), exception=System.Runtime.InteropServices.COMException (0x800703E3): The I/O operation has been aborted because of either a thread exit or an application request. (Exception from HRESULT: 0x800703E3) at Microsoft.ReportingServices.HostingInterfaces.IRsHttpPipeline.SendResponse(Void* response, Boolean finalWrite, Boolean closeConn) at ReportingServicesHttpRuntime.BaseWorkerRequest.SendHttpResponse(Boolean finalFlush) library!ReportServer_0-2!58dc!09/12/2016-23:26:45:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: RsWorkerRequest::FlushResponse., Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: An internal or system error occurred in the HTTP Runtime object for application domain ReportServer_REPCENTER_0-2-131182052998828671. ---> System.Runtime.InteropServices.COMException (0x800703E3): The I/O operation has been aborted because of either a thread exit or an application request. (Exception from HRESULT: 0x800703E3) at ReportingServicesHttpRuntime.BaseWorkerRequest.SendHttpResponse(Boolean finalFlush) at ReportingServicesHttpRuntime.RsWorkerRequest.FlushResponse(Boolean finalFlush) --- End of inner exception stack trace ---;

Zeus
  • 3,091
  • 6
  • 47
  • 60
  • It's a little hard to make out, but it looks like this might be the sort of error caused by an execution timeout. If you check the execution log, what sort of time is taken by these reports to render? – bitnine Sep 09 '16 at 20:27
  • where do I find execution log to find the render time ? one thing is that this report has large amount of data. – Zeus Sep 10 '16 at 16:57
  • There is a view in the report server's database called ExecutionLog2. That has columns for `TimeDataRetrieval`, `TimeProcessing`, and `TimeRendering` as well as showing which specific reports ran at a given time. – bitnine Sep 10 '16 at 17:03
  • I will take a look, how will that help though ? Timeout error is misleading as we have 12hr timeout limit and report sometimes completes and sometimes fails. – Zeus Sep 10 '16 at 17:42
  • One thing it would tell you is how much work is being done in each step and how far along it got - for example, if it made it through the data retrieval and on to processing. You mentioned below that you already increased the execution timeout in the web.config file, and I'm assuming that you did the same with the processing timeout on the report server. You might want to include the things you've tried in your question. I would still check the SSRS memory usage on the server, as that can restart the process and cause an exception like this. – bitnine Sep 13 '16 at 15:22

1 Answers1

0

Finally we have answer to this. Its the recyletime element inside "rsreportserver.config" file. By default this element value is set to 720 min (12 hr). This means from the time you start the SSRS service, it will recycle every 12 hr. Our service was started during mid night release this means it kept recycling everyday at noon. We have since update this value to 24 hr.

    <RecycleTime>1440</RecycleTime>
    <MaxAppDomainUnloadTime>60</MaxAppDomainUnloadTime>
Zeus
  • 3,091
  • 6
  • 47
  • 60