Skip to Content
0

Crystal reports 13.0.17 IIS Application Pool Crash

Mar 28, 2017 at 01:11 PM

79

avatar image

Hi,

I am wondering if anyone has any insight into what the below Crystal code is doing at the time of this crash. Not looking for a solution - just an idea of where to look

It appears the exception is coming from crdb_ado!DbFreeErrorInfo



Full details below



Thread 299 - System ID 13252

Entry point msvcr80!endthreadex+80Create time 24/03/2017 10:04:57 p.m.Time spent in user mode 0 Days 00:00:00.124Time spent in kernel mode 0 Days 00:00:00.062



This thread is making a database operation using ADO.

The call to MSADO15!CSTDPROPSETPROPERTIES2::GET_ITEM originated from crdb_ado!DbFreeErrorInfo+19d84


Call Stack

oleaut32!SysAllocString+32msado15!CStdPropSetProperties::GetNameFromInfo+5emsado15!CStdPropSetProperties2::Refresh+65cmsado15!CStdPropSetProperties2::get_Item+ddcrdb_ado!DbFreeErrorInfo+19d84crdb_ado!DbFreeErrorInfo+564d9crdb_ado!DbFreeErrorInfo+374e9crdb_ado!DbLogonServer+10e0crqe+10c6dcrqe+655efcrqe+65d37crqe+51640crpe32!PEGetNthTableQualifier+3172ccrpe32!PEGetNthTableQualifier+33af2crpe32!PEGetNthTableQualifier+385dacrpe32!PEGetNthTableQualifier+7b981crpe32!MWCleanupProcess+d10c7crpe32!CRPEConnectionInit+2377a4crpe32!CRPEConnectionInit+2451f4crpe32!CRPEConnectionInit+24631fcrpe32!CRPEConnectionInit+24663ccrpe32!CRPEConnectionInit+246cecmfc80u!_AfxThreadEntry+101msvcr80!endthreadex+47msvcr80!endthreadex+104kernel32!BaseThreadInitThunk+dntdll!RtlUserThreadStart+1d

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Don Williams
Mar 28, 2017 at 01:17 PM
0

Hi Adam,

The error suggests possibly too many connections open. This can happen if you are not closing and disposing of the report objects when done with them.

Could also be IIS has too much memory fragmentation, CR requires contiguous memory space. Windows is not capable of defragging memory on the fly like UNIX OS can. Try cycling IIS when the error happens and try again.

Or your ADO Dataset is too large, you need to limit the DS to about 5K rows and not many columns, if you go higher it can cause a memory problem. Exact numbers is not available because it all depends on what is available. MS does not allow access directly to the Dataset so CR has to make a copy of it which doubles the memory usage and then if you have tables that can group to be huge....

Do you know the conditions when the error happens?

Don

Share
10 |10000 characters needed characters left characters exceeded
Adam Skelton Mar 29, 2017 at 08:11 PM
0

Hi Don,

Firstly thank you for getting back to me so quickly. We are going to follow up your points. We know we have report disposal issues back in this version of our product and have made subsequent changes in our code an try to actively dispose of unused report objects rather than relying on the garbage collector. In this case we can see 200+ report objects waiting for collection

Based on this and your thoughts above we are going to recommend our client move to our latest code base to see if the issue resolves.

Thanks for your time on this, and all the other articles that have been of assistance on this site.

Adam

Share
10 |10000 characters needed characters left characters exceeded