Monday, March 19, 2012

Cannot view reports after upgrading to SSRS 2005

Hello,

We recently did an "in place" upgrade of SQL Server and SSRS 2000 to 2005.

After the upgrade we cannot view the exisiting reports. (although we can publish new reports using the VS2005 Designer and they show up just fine.)

We have SP2 installed for SSRS2005 and all SPs for SQL are up to date.

When we navigate to an existing report via the reporting services website, the report acts like it is trying to run and then returns and error message:

An internal error occurred on the report server. See the error log for more details. (rsInternalError) Get Online Help

When we look at the logs we see that the report server cannot initialize the stream from the Catalog table.

aspnet_wp!library!1!08/28/2007-16:52:29:: Call to GetPropertiesAction(/Report Administration/All Process Dates, PathBased).
aspnet_wp!chunks!1!08/28/2007-16:52:29:: i INFO: Returning old chunk for: (fd690975-ec5b-4033-9664-81335e3990c0, 'CompiledDefinition', 0)
aspnet_wp!library!1!08/28/2007-16:52:29:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., Could not initialize stream;
Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
aspnet_wp!library!1!08/28/2007-16:53:01:: i INFO: Exception dumped to: C:\Program Files\Microsoft SQL Server\MSSQL.2\Reporting Services\LogFiles flags= ReferencedMemory, AllThreads, SendToWatson
aspnet_wp!chunks!1!08/28/2007-16:53:01:: e ERROR: ### SnapshotConverter(fd690975-ec5b-4033-9664-81335e3990c0, True), Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
aspnet_wp!library!1!08/28/2007-16:53:01:: Call to GetSystemPropertiesAction()

We welcome any suggestions.

Check the XML for those reports that don't work. Possibly the XML was not upgraded properly?

Check this thread for what the XML should be for 2005 reports:

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=997796&SiteID=1

|||

We manually extracted an RDL from the Catalog table and examined it. The RDL still has a reference to the 2003 namespace and doesn't appear to have been altered during the upgrade to 2005.

We opened this same RDL in VS2005 and chose NOT to convert the RDL to 2005 and then we republished the report to the server and amazingly enough it works perfectly. (we didn't change anything other than republish the file)

The problem with this method is that we have 600 reports and it will take a while to manually extract each RDL from the Catalog table, open them in VS and then republish to the server.

Is there any sort of automated way to "recompile" all of the reports on the server? It seems like they need a jump start after the conversion to 2005 before they will work.

|||

We were able to create a solution to fix our corrupted reports.

What we did was create an application that would:

1. Read each row of the "Catalog" table.

2. Extract the "Content" field and stream the binary image data to an "ascii" text file. (not "utf-8"?)

3. Connect to the ReportingService.asmx XML web service.

4. Stream-in the newly created ascii RDL file.

5. Publish the text stream using the "SetReportDefinition" method. (apparently converts back to utf-8?)

It took our application about 15 minutes to "republish" 600 reports. The application worked like a charm and our SSRS 2000 reports now work perfectly on SSRS 2005.

This solved the problem of SSRS 2005 not being able to "initialize the stream" after performing an in-place upgrade from SSRS 2000.

"Good Luck" to anyone facing the same problem!

No comments:

Post a Comment