cancel
Showing results for 
Search instead for 
Did you mean: 

crpe32.dll crashing w3wp.exe!

Former Member
0 Kudos

Hi everybody, first of all sorry for my bad English. We are using Crystal Report for Visual Studio for displaying rpt files in HTML report viewer. Our server is a Windows 2008 Standard Edition 64 bit with IIS 7.0 and we recently downloaded and updated Crystal Report for Visual Studio dlls with your last service pack. But we have always the same problem. In a regular but in the same time randomic way, the IIS worker process crashes and in the Windows event viewer appears a message like the following:

Faulting application w3wp.exe, version 7.0.6002.18005, time stamp 0x49e03238, faulting module crpe32.dll, version 13.0.3.612, time stamp 0x4f71a023, exception code 0xc0000005, fault offset 0x00000000002a6ed4, process id 0x%9, application start time 0x%10.

We are not able to understand where the problem is. In the meanwhile, we are experiencing a lot of problem with our customers. Can you help us?

If it helps, we have generated on our server with Microsoft DebugDiag a memory dump of the IIS worker process.

Best regards

Adriano

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

Hello Adriano

First, thank you for the debugdiag file offer. Unfortunately, these are only community forums, not technical support and as such an exchange of log files is normally reserved for phone incidents only.

However, I do have a few questions;

1) When the error occurs, are the users simply viewing the report or printing from the viewer or exporting from the viewer?

2) How as the CR runtime deployed to the server?

3) Can you duplicate the issue in your development environment?

4) What is the database you are using and the database connection method?

5) Are you using .close and .dispose methods after you are done with each report?

7) The error you document is in the event viewer. What does the user see? E.g.; define "worker process crashes".

😎 How many users? (E.g.; what's the load?)

- Ludek

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Share Your Knowledge in SCN Topic Spaces

Former Member
0 Kudos

Hi Ludek, first of all many thanks for your response. I'll try to reply in my best way to your questions.

  1. The application stops to work because the worker process dies and users waiting for the completion of their requests see a message such as "data source not found" in a HTML div message box
  2. The CR runtime was installed with the original MSI file downloaded by your site
  3. At now, we were not able to reproduce this issue
  4. The database engine at the moment is Microsoft SQL Server 2000 32 bit. In a short time, we'll migrate all customer databases in a Microsoft SQL Server 2008 64 bit environment. We are using the ApplyLogonInfo method on each report (and its subreports) passing a ConnectionInfo class instance properly initialized
  5. Yes, we're using such methods
  6. Not found any question
  7. The IIS worker process (w3wp) crashes and dies and IIS recycles it, so our application stops to work and users have to redo from beginning what they were doing. In the meanwhile, in the event viewer appears the exception I've sent in my previous post
  8. We haven't a precise measure of that but approximately we have sometimes more than 50 users using reporting in a concurrent way

This problem is compromising the overall usability and stability of the application and we are receiving a lot of claims about this.

Thank you

Adriano

former_member183750
Active Contributor
0 Kudos

Hello Adriano

Looking at the Supported Platforms for CRVS2010, I do not see MS SQL as a supported database. So that may be part of the issue.

It would be interesting to see how this app behaves with Microsoft SQL Server 2008. An FYI re. Microsoft SQL Server 2008, keep the following in mind:

MS SQL Server 2008 does not work with the MDAC version of the Native drivers, you must install the MS SQL Server Client. You'll see the driver name is "MS SQL Server Native client 10". This is the one you need to use. Alternatively, use ODBC, it seems to resolve all issues, but the client must be installed.

- Ludek

Former Member
0 Kudos

Yes, I know that. In fact we're using the native drivers for MSSQL. I didn't know neither imagine MSSQL was not supported by CRVS2010. For using that database, which version of CR software have we to use? Again, in this moment we use OLEDB for data access. We'll try to switch to ODBC hoping this issue disappears. I'll continue to inform you about our testing, if you want.

Thank you again

Adriano

charles_gagnon
Participant
0 Kudos

Hello Adriano,

     I had similars issues with Crystal Report.

     The first one was caused when setting connexion to subreport after setting it to the main report see following thread: http://scn.sap.com/thread/1906313  look for the message on March 9 2011.

     The second issue I had was when removing a subreport to replace it by another one. I you remove the subreport after you have access the subreport in anyway you will get the error. If you are doing something like this do the removal as soon as possible after opening the report.

Hope it help.

Thank you.

Charles.

0 Kudos

It may be that your App Pool is running in 64 bit but CR redist is 32 bit or the other way around.

Check the App pool and verify which CR runtime you installed, 32 or 64 bit.

Don

Former Member
0 Kudos

Hi Don, I've many times checked our server configuration. All is running and is configured for a 64 bit platform.

Thank you so much

Adriano

0 Kudos

Hi Adriano,

Like Ludek indicated SQL 2K is not supported with this version of CR runtime. It may be that too many users are accessing the reports causing to many connections to the DB. could be a limit of the DB Server itself. CR makes a connection for the main report and then one for each subreport. So if there are subs you may have 100's of DB connection open.

Also, make sure you are closing and disposing of the reports once completed, if you don't the DB connections stay active.

unfortunarely I don't have SQL 2000 any more so I can't verify the issue...

All I can suggest is to make sure you are closing the reports and to add Exception handling in your app to handle the database connection problem without crahsing the IIS process.

One final note is to make sure you don't have more than one copy of crpe32.dll on the WEB server, could be a conflict if the wrong version is being used.

Don

Former Member
0 Kudos

Hi Don, in this moment we're using SQL Server 2008 but the result doesn't change. We have noticed that, sometimes, also OLEAUT32 (not only CRPE32) causes the IIS worker process crash.

We have checked and in this moment we have installed only one version of CRPE32 on our web server (the one installed with the latest available service pack ).

I've just a couple of question for you:

  1. when you say we have to close and dispose reports once completed, what do you mean referring it to the cycle life of an ASP.NET page?
  2. in this moment we have our .net exception handling in the application; but when the app pool crashes, it isn't triggered and we can only see a log entry in the Windows event viewer. Do you have some suggestion about this?

Thank you so much

Adriano

0 Kudos

Great,

Then now you need to update all of your reports to use the MS SQL Native 10 Client. Microsoft doesn't support MDAC OLE Db Provider with SQl 2008.

Install the Client on the CR PC and then Click on Database, Set Location and update your report. Try a few to verify it resolves the issue.

Don

Former Member
0 Kudos

Hi Don, thank you so much for your reply. Just a question: we have to set programmatically the reports connection . In which way could we do it using MS SQL native client?

Thank you again

Adriano

0 Kudos

Search for a Kbase article or forum post with "ReplaceConnection" in it and you'll see sample code on how to. Must use RAS.

Better to update the report manually though so you know the report works properly.

Don

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi all, after many trials we haven't solved our problem. The IIS w3wp process crashes a lot of times in a day with the crpe32.dll access memory violation. This is so frustrating for our customers and we are receiving a lot of claims everyday about that. As I said a couple of week ago, we have the worker process memory dump so, a this point, I would ask:

  1. in which way could we receive support by your team?
  2. how many will it cost?
  3. in which way could we send you memory dump and, maybe, our source code for helping us to solve this problem?
  4. maybe we have to use Crystal Server in turn of Visual Studio 2010 version? Could this solve this annoying problem?

Thank you so much

Adriano 

former_member183750
Active Contributor
0 Kudos

Re. 1, and 2, (phone support), see the following link:

http://store.businessobjects.com/store/bobjamer/en_US/pd/productID.98078100?resid=S6I@hgoHAkEAAGsiyV...

Re. 3, only via an actual phone support.

Re. 4, I don't belive so. Question I always ask my self when I get an issue nobody else is getting; why am I so lucky? What am I doing differently?

If you do create a phone support, please do post the solution here.

- Ludek

0 Kudos

Ludek's first reply has a link to get a phone case opened.

Make sure youa re closing a disposing of the report objects once they are finished with and clean up any memory allocations you are also using and done with.

If you annalyze the IIS dump what is it indicating the problem is? Are you using DebugDiag? It can show you the details also.

Is it any report or a specific one?

How much logging have you built into your app?

Search for a kbase on how to enable CRPE tracing, it may give you more info also.

Don

Former Member
0 Kudos

Hi Ludek, thank you so much for your reply. Just a comment about your reply to our point 4. Yes, you're right we are unluckily "lucky". But, as we can see looking around in your community, there are a lot of cases about crpe32.dll problems and IIS w3wp crashes. Are you sure that only us are "lucky"?

Former Member
0 Kudos

Hi Don, thank you so much for your reply. I'll try to reply to your previous comments in an ordered way.

  1. Yes, we are closing and disposing report objects in particular the report document. The only thing, we are doing that when the user abandons his asp.net work session because in this moment we're storing the report document in a session variable after the first request to the aspx page
  2. We're using DebugDiag but we haven't source symbols for Crystal components so we aren't able to understand where the problem is
  3. The problem succeeds with any report, not only with a specific one
  4. We have logging on a file with log4net and on the database with custom logging
  5. I'll try what you suggests about CRPE tracing

Adriano

former_member183750
Active Contributor
0 Kudos

Understood. But in the absence of data indicating otherwise... E.g.; if you can give me reference links to the identical issue you are having, I'll gladly have a look. Perhaps there is a common thread there that will lead us to a solution.

- Ludek

Former Member
0 Kudos

Hi all, referring to our problem, is it possible to have debug symbols for CR objects? We have some memory dumps and we could try to analyze them with those symbols. We're working on a Win2008 Server x64 platform.

Thank you so much

Adriano

0 Kudos

Hi Adriano,

We can get them for you but there are about 4 gig of them and you don't need them all.

What is the exact version of crpe32.dll your are using and did the dump indicate any other CR dll's?

I'll zip just those up and put them on our FTP server for you.

Don

Former Member
0 Kudos

Hi Don, I've copied the crpe32 version from a recent event viewer record:

Faulting application w3wp.exe, version 7.0.6002.18005, time stamp 0x49e03238, faulting module crpe32.dll, version 13.0.3.612, time stamp 0x4f71a023, exception code 0xc0000005, fault offset 0x00000000002a6ed4, process id 0x%9, application start time 0x%10.

At the moment, we could see only this trace. Sometimes, the same access violation it's caused by oleaut32.dll.

Thank you so much

Adriano

0 Kudos

Here it is:

The link will be available within the next half hour. You can then download the file from:
https://sapmats-de.sap-ag.de/download/download.cgi?id=JQSCKGVCWIYJJXR2SNV5F7WH5HEYZ2BEEY5V0P9RD8H758...

Copy it into the same location as crpe32.dll and re-run.

As for oleaut32 go to Microsoft for that one...

Don

Former Member
0 Kudos

Hi Don, thank you so much for your reply. I've just downloaded the pdb files and next week I'll try to use them. Don't worry, I know I've to contact Microsoft for oleaut. Already done!

Thank you so much again. Have a good week end.

Adriano

Former Member
0 Kudos

Hi Don, just a couple of question for you:

  1. I've placed pdb files in the same location as crpe32.dll but nothing has changed. When we analyze a memory dump with DebugDiag, we continue to see a message saying that DebugDiag was not able to locate symbol files for crpe32.dll. What mistake are we doing?
  2. Our problem completely disappears if we disable print/export buttons of the viewer. In fact, after many hours of logging/tracing and debugging, we have seen that when our customers export or print a report, the memory on the server side increases a lot and never decreases. After many export/print commands suddenly the IIS woker process crashes with an access violation of crpe32.dll. Have you some idea about this strange behaviour?

Thank you so much again for your kindness.

Adriano

0 Kudos

Hi Adriano,

In DebugDiag go to the option menu and enter the location of the CR PDB's:

Then it should be able to find them.

Do you have to disable both Print and Export or either of them?

Exporting could be database/client/Active Data Sets related, be sure to dispose of your DataSets if that is what you are using also. Printing could be the print driver or Spooler not releasing the jobs also.

Which Printer API are you using or is it the Print button on the Viewer you are using?

You could try creating your own Print and Export Buttons and have better control and handling of the functions, if you have not already?

Don

Former Member
0 Kudos

Hi Don, I'll try immediately your suggest for pdb files in DebugDiag.

In this moment, we're using only print/export buttons of report viewer. We have not write custom code for handling those operations. Today, during other debugging sessions, we have noticed that the problem seems appearing only when our customers uses Internet Explorer's ActiveX control for printing (that component doesn't work in remaining browsers such as Chrome or Firefox). Now, we are testing a version with only the export functionality of the report viewer. We'll hope this could solve our problem.

I'll be glad to inform you about this trial if you want.

Thank you so much

Adriano

0 Kudos

Great... you can Analyze the dump and then save the output file, zip it up and then rename it to *.txt then using the Advanced Editor you can attach the file. I'll have a look at it also.

As long as it's less than 1 meg in size you can attach it.

Don