Purple Frog


Hi all - please help!

I'm running SSRS 2005 (9.00.3027.00) in Sharepoint integrated mode on a Win2003 SP1 box. This works fine for most reports, including matrix reports sourcing data from SSAS 2005.

However, I have a couple of large matrix reports (7 columns per group, 12 column groups, 150 rows, 1 row per group, data from SSAS) that run fine when I run them in VS2005, but as soon as I try and run them from within Sharepoint/Report Server I get "An unexpected error has occurred.". Sometimes this happens after 60 seconds, sometimes more (up to 3 minutes)

If I filter them down to 7 column groups they work perfectly (altbeit slowly,1-2 mins), 8 groups works sometimes, 9 never works. I've checked that the report execution timeout is set to 10 minutes.

The SSRS log shows the errors as WrapperReportRenderingException and JobCanceledException. I'm not sure whether the the rendering error causes the cancelled error or vice versa. does anyone know what I can do about this

By the way, from looking at the CPU usage of the server, it seems as though SSRS does carry on rendering the report long after Sharepoint has given up and returned with the helpful error. 

Many thanks in advance

Alex

 

Log extract as follows:

w3wp!library!7!01/25/2007-11:11:44:: Call to GetPermissionsAction(http://uk-ls-it-02/Reports/Triangles/Gross Triangle Treaty Property.rdl).
w3wp!library!7!01/25/2007-11:11:44:: Call to ListParentsAction(http://uk-ls-it-02/Reports/Triangles/Gross Triangle Treaty Property.rdl).
w3wp!library!7!01/25/2007-11:11:49:: Call to GetPermissionsAction(http://uk-ls-it-02/Reports/Triangles/Gross Triangle Treaty Property.rdl).
w3wp!library!1!01/25/2007-11:11:50:: Call to GetPermissionsAction(http://uk-ls-it-02/Reports).
w3wp!library!13!01/25/2007-11:11:50:: Call to GetSystemPropertiesAction().
w3wp!library!13!01/25/2007-11:11:51:: i INFO: Call to RenderFirst( 'http://uk-ls-it-02/Reports/Triangles/Gross Triangle Treaty Property.rdl' )
w3wp!runningjobs!7!1/25/2007-11:13:20:: i INFO: Adding: 1 running jobs to the database
w3wp!runningjobs!7!1/25/2007-11:14:20:: i INFO: RunningJobContext.IsClientConnected; found orphaned request
w3wp!reportrendering!13!01/25/2007-11:14:20:: e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException: An error occurred during rendering of the report., ;
 Info: Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException: An error occurred during rendering of the report. ---> Microsoft.ReportingServices.ReportRendering.ReportRenderingException: An error occurred during rendering of the report. ---> System.Threading.ThreadAbortException: Thread was being aborted.
   at Microsoft.SharePoint.Library.SPRequest.OpenWebInternal(String bstrUrl, Guid& pguidID, String& pbstrRequestAccessEmail, UInt32& pwebVersion, String& pbstrServerRelativeUrl, UInt32& pnLanguage, UInt32& pnLocale, String& pbstrDefaultTheme, String& pbstrDefaultThemeCSSUrl, String& pbstrAlternateCSSUrl, String& pbstrCustomizedCssFileList, String& pbstrCustomJSUrl, String& pbstrAlternateHeaderUrl, String& pbstrMasterUrl, String& pbstrCustomMasterUrl, String& pbstrSiteLogoUrl, String& pbstrSiteLogoDescription, Object& pvarUser, Boolean& pvarIsAuditor, Int32& plSiteFlags)
   at Microsoft.SharePoint.SPWeb.InitWebPublic()
   at Microsoft.SharePoint.SPWeb.get_ServerRelativeUrl()
   at Microsoft.SharePoint.SPWeb.get_Url()
   at Microsoft.ReportingServices.SharePoint.Server.Utility.GetSPItemMetaDataAndContent(String path, UserContext userContext, Boolean returnContent, Guid& id, ISecurableObject& secObj, SharePointImpersonatedWeb& wrapper, Byte[]& content, String& mimeType)
   at Microsoft.ReportingServices.SharePoint.Server.Utility.GetSPItemType(String objectName, UserContext userContext, Guid& id, ISecurableObject& secObj, SharePointImpersonatedWeb& wrapper)
   at Microsoft.ReportingServices.SharePoint.Server.Utility.GetSPItemType(String objectName, UserContext userContext, Guid& id)
   at Microsoft.ReportingServices.SharePoint.Server.Utility.GetSPItemType(String objectName, UserContext userContext)
   at Microsoft.ReportingServices.SharePoint.Server.SharePointServiceHelper.Microsoft.ReportingServices.Diagnostics.IPathManager.IsSupportedUrl(String path, Boolean checkProtocol, Boolean& isInternal)
   at Microsoft.ReportingServices.Diagnostics.CatalogItemUrlBuilder.IsReportServerPathOrUrl(String pathOrUrl, Boolean checkProtocol, Boolean& isPath)
   at Microsoft.ReportingServices.ReportRendering.ReportUrl..ctor(RenderingContext reportContext, String initialUrl, Boolean checkProtocol, NameValueCollection unparsedParameters, Boolean useReplacementRoot)
   at Microsoft.ReportingServices.ReportRendering.Action.get_DrillthroughReport()
   at Microsoft.ReportingServices.ReportRendering.Action.get_DrillthroughID()
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.GetActionUri(Action action)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.HasMultipleActions(ActionCollection actions, Int32& actionIndex, RenderActionInfo& firstActionInfo)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderTextBoxPercent(TextBox textBox, Boolean renderId)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderReportItem(ReportItem reportItem, Int32 borderContext, Boolean renderId)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderRangeCellsContent(MatrixCell lastCell, Int32 cellBorderContext)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderRangeCells(Matrix matrix, Int32 indexRow, Int32 startCell, Int32 endCell, IntList hiddenColumns, Int32 borderContext, Boolean dirLefRight)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderNonSplitMatrixLevel(Matrix matrix, MatrixMember currMember, Boolean& newRow, Boolean partialItem, Int32 level, IntList hiddenColumns, SizeCollection cellHeights, Boolean changableRows, Int32 borderContext, Boolean dirLefRight, MatrixContext matrixContext)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderNonSplitMatrix(Matrix matrix, MatrixMember member, Boolean& newRow, Boolean partialItem, Int32 level, IntList hiddenColumns, SizeCollection cellHeights, Boolean changableRows, Int32 borderContext, Boolean dirLefRight, MatrixContext matrixContext)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderMatrixContent(Matrix matrix, Boolean partialItem, Int32 borderContext, Boolean dirLefRight, Boolean expandLayout, MatrixContext matrixContext)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderMatrix(Matrix matrix, Boolean partialItem, Int32& borderContext, Boolean renderId)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderReportItem(ReportItem reportItem, Int32 borderContext, Boolean renderId)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderCellItems(ReportItemCollection repItemCol, Hashtable partialItems, Hashtable expandItems, PageTableCell currCell, Int32 borderContext, Int32 linkToChild, Boolean layoutExpand)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.GenerateTableLayoutContent(PageTableLayout rgTableGrid, Hashtable partialItems, ReportItemCollection repItemCol, Boolean bfZeroRowReq, Boolean bfZeroColReq, String docMapId, Boolean inDocMap, Boolean renderHeight, Int32 borderContext, Int32 linkToChild, Boolean layoutExpand)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.GenerateHTMLTable(ReportItemCollection repItemCol, Double dxParent, Double dyParent, PageData pageData, String docMapId, Boolean inDocMap, Int32 borderContext, Int32 linkToChild, Boolean expandLayout)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.HTML4Renderer.RenderRectangle(Rectangle rectangle, PageData pageData, Int32& borderContext, Boolean renderId)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderPage(Int32 index)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderPages()
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.BaseRenderer.RenderBody(HtmlTextWriter htmlTextWriter)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.ViewerReportArea.Render(HtmlTextWriter outputWriter)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.Html40RenderingExtension.InternalRender(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, EvaluateHeaderFooterExpressions evaluateHeaderFooterExpressions, CreateAndRegisterStream createAndRegisterStream)
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.RenderingExtensionBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, EvaluateHeaderFooterExpressions evaluateHeaderFooterExpressions, CreateAndRegisterStream createAndRegisterStream)
   --- End of inner exception stack trace ---
   at Microsoft.ReportingServices.Rendering.HtmlRenderer.RenderingExtensionBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, EvaluateHeaderFooterExpressions evaluateHeaderFooterExpressions, CreateAndRegisterStream createAndRegisterStream)
   at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.RenderReport(IRenderingExtension renderer, DateTime executionTimeStamp, GetReportChunk getCompiledDefinitionCallback, ProcessingContext pc, RenderingContext rc, CreateReportChunk cacheDataCallback, Boolean& dataCached)
   --- End of inner exception stack trace ---
w3wp!runningjobs!13!01/25/2007-11:14:20:: i INFO: CancelableJobExecution.Execute caught our thread abort exception
w3wp!library!13!01/25/2007-11:14:20:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.JobCanceledException: An administrator has canceled the job., ;
 Info: Microsoft.ReportingServices.Diagnostics.Utilities.JobCanceledException: An administrator has canceled the job. ---> Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException: An error occurred during rendering of the report. ---> Microsoft.ReportingServices.ReportRendering.ReportRenderingException: An error occurred during rendering of the report. ---> System.Threading.ThreadAbortException: Thread was being aborted.
   --- End of inner exception stack trace ---
w3wp!webserver!13!01/25/2007-11:14:20:: e ERROR: Reporting Services error Microsoft.ReportingServices.Diagnostics.Utilities.JobCanceledException: An administrator has canceled the job. ---> Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException: An error occurred during rendering of the report. ---> Microsoft.ReportingServices.ReportRendering.ReportRenderingException: An error occurred during rendering of the report. ---> System.Threading.ThreadAbortException: Thread was being aborted.




Re: SSRS in Sharepoint, WrapperReportRenderingException/JobCanceledException for large Matrix (OLAP) reports

Purple Frog


More info...

If I schedule the report to render in Excel, it works fine - this must be a bug in the web rendering engine.

Anyone heard of this Or know of a hotfix or something

Thanks






Re: SSRS in Sharepoint, WrapperReportRenderingException/JobCanceledException for large Matrix (OLAP) reports

Prash Shirolkar - MS

You seem to be running into a problem by using HTML renderer in SharePoint mode. However, we are not aware of any such problem with large matrix reports in the HTML renderer.

Can you send us the contents of your report rdl file

thanx,

Prash







Re: SSRS in Sharepoint, WrapperReportRenderingException/JobCanceledException for large Matrix (OLAP) reports

Purple Frog

Hi Prash

Thanks for looking into this. I've put the rdl and the rdl.data files in a zip on my website

http://www.purplefrogsystems.com/download/RdlAndData.zip

Thanks

Alex





Re: SSRS in Sharepoint, WrapperReportRenderingException/JobCanceledException for large Matrix (OLAP) reports

Prash Shirolkar - MS

It appears that you could be running into an ASP.Net timeout before the SharePoint method SPRequestInternalClass.OpenWebInternal is able to complete its operation.

Does increasing the ASP.Net executionTimeout attribute of the httpRuntime element make any difference

thanx,
Prash






Re: SSRS in Sharepoint, WrapperReportRenderingException/JobCanceledException for large Matrix (OLAP) reports

Purple Frog

Hi Prash

That's spot on - thank you so much, really appreciated!

Regards

Alex