Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Reporting Services - Local Report - Memory & Session Usage

61 views
Skip to first unread message

Antony

unread,
Oct 29, 2007, 11:19:00 PM10/29/07
to
Hello there, I'm currently experiencing some issues with Reporting
Services' ReportViewer Control. When running the control without a Reporting
Server in 'Local' processing mode we cannot serve very many simultaneous
requests. Worse, if a single user opens several reports one after the other
they can easily get an OutOfMemory exception from the w3wp.exe (Attempting to
serialize something?). I've debugged the page and supporting code and looked
at some output from CLRProfiler with no obvious leaks. I have noticed
something though, after each report is loaded, another ReportHierarchy object
is stored in the user's Session server side. Is the report control storing
the data in session?

--- page code ---
...AutoEventWireup="true".....
....
<rsweb:ReportViewer
Width="100%"
runat="server"
AsyncRendering="true"
ShowPrintButton="true"
ShowRefreshButton="false"
ID="<blahblah>"
ShowExportControls="true"
ExportContentDisposition="AlwaysInline">
</rsweb:ReportViewer>

--- page behind code ---
reportControl.Reset();
reportControl.ShowPrintButton = true;
reportControl.ShowRefreshButton = false;
reportControl.LocalReport.LoadReportDefinition(<stream>);
reportControl.LocalReport.DisplayName = "My Report";
reportControl.LocalReport.DataSources.Clear();
reportControl.LocalReport.DataSources.Add(new
ReportDataSource(ReportDefinitionGenerator.DYNA_DATASET_NAME,
<DataTable>.DefaultView));
reportControl.SizeToReportContent = true;


Cheers
Antony


Antony

unread,
Nov 2, 2007, 11:07:03 AM11/2/07
to
Still waiting? Any advice? We're looking at changing the design and
moving away from running reports in 'Local' Processing mode but that would
require making a staging area for the data that the Reporting Services Server
could also access.

;(

Bruce L-C [MVP]

unread,
Nov 2, 2007, 11:44:32 AM11/2/07
to
I looked at doing local reports and decided against it due to a variety of
reasons. One, designing and testing is a lot harder. Subreports are a pain.
Lots more mucking around.

The local report mode is not intended to be a replacement for the server
based product. If it was, then why buy the server (seeing as how the control
comes with VS and does not require any licensing). So, it does not surprise
me that it has limitations under load.

There is a major shift in how you design. You are used to creating the
tablesets, responding to events etc. With the server based product you
design the dataset and let RS get the data. You do not respond to events.
Yes, you can write a data processing extension if you want but it is
non-trivial and I would only go that way if you absolutely must. Otherwise,
in the report definition define the datasets by putting in the SQL or
referring to a stored procedure.


--
Bruce Loehle-Conger
MVP SQL Server Reporting Services

"Antony" <alo...@trialstat.com(do not spam)> wrote in message
news:83063161-C816-4E81...@microsoft.com...

Antony

unread,
Nov 26, 2007, 4:45:00 PM11/26/07
to
Thanks Bruce, sorry, I just noticed that I didn't reply to you sooner. Do
you know if the persistance of the ReportHierarchy obj in session is
intentional?

Cheers
Antony

--
;)

IT Manager

unread,
Dec 26, 2007, 12:51:02 PM12/26/07
to
Were you able to resolve your performance issues when using the ReportViewer
control in Local Mode? If so, what steps did you take?

We are considering doing the same but are concerned about performance
degradation as well.

Thanks for any information you can provide.

0 new messages