cancel
Showing results for 
Search instead for 
Did you mean: 

Unknown database connector error

Former Member
0 Kudos

i connect to an oracle 10g db.

After 30 mins if i refresh my report, i get "unknown database connector error".

Is there an oracle setting or param i can check, to stop my crystal session timing out ?

Accepted Solutions (0)

Answers (1)

Answers (1)

0 Kudos

Need more info.

What version of Crystal and how are you connecting to Oracle and who's driver are you using?

Former Member
0 Kudos

I m using Crystal version 11.5.11.1470

I connect using ODBC(RDO) to the Oracle 10g DB

How can i check which driver i am using.

Thanks

Edited by: John E Fleming on Apr 15, 2010 6:56 PM

0 Kudos

Go into ODBC Administrator and look at the name of the driver against your DSN.

Former Member
0 Kudos

Oracle in OraClient10g_home1 10.02.00.01

0 Kudos

I would ask Oracle why the session is disconnecting. Nothing in CR that controls this. CR will open a thread against the HDBC handle of the Oracle ODBC connection and continue to use it as long as it is valid. If the HDBC handle, which is the original connection when you fill in the user name and password, is closed then our thread off that handle becomes invalid also.

CR may disconnect from the handle until it requires data from the DB and we assume the connection is still open and would either try the old thread or create a new one.

If you go into ODBC Admin and turn on ODBC tracing you can see what is happening.

Thank you

Don

Former Member
0 Kudos

Thanks Don, i enabled the trace, refreshed my report after 30 mins and get the "unknowndatabase connector error"

Trace file has entries i don't understand. How do i engage oracle to help ? any ideas ?

would you like to see the trace file ?

0 Kudos

Hello,

You can't attach file to Forums so go to Oracles site and see if they have a forum or contact info. If you want SAP to see what's going on you can go to this link: http://store.businessobjects.com/store/bobjamer/DisplayProductByTypePage&parentCategoryID=&categoryI...

And purchase a support case to get a support engineer to work with you directly.

Thank you

Don

Former Member
0 Kudos

Thanks Don, I'm sure this is an oracle setting. Single case solution is $195.

This is what i see in the trace. The connection is lost because of the SQLDisconnect message.

Maybe someone in the community has an idea ??

crw32 150-d44 ENTER SQLFreeHandle

SQLSMALLINT 3 <SQL_HANDLE_STMT>

SQLHANDLE 05612790

crw32 150-d44 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS)

SQLSMALLINT 3 <SQL_HANDLE_STMT>

SQLHANDLE 05612790

After 30 minutes i see this entry

crw32 150-d44 ENTER SQLDisconnect

HDBC 05611BB0

crw32 150-d44 EXIT SQLDisconnect with return code 0 (SQL_SUCCESS)

HDBC 05611BB0

crw32 150-d44 ENTER SQLFreeHandle

SQLSMALLINT 2 <SQL_HANDLE_DBC>

SQLHANDLE 05611BB0

crw32 150-d44 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS)

SQLSMALLINT 2 <SQL_HANDLE_DBC>

SQLHANDLE 05611BB0

0 Kudos

Hi John,

It does appear CR is sending the disconnect. I don't know why, we never used to. I'll ping the Database Developers and see what they have to say or if we have a registry setting available not to sent the HDBC disconnect. We likely do it to free up connections because some ODBC drivers are limited to the number of connections that can be opened and stay open.

Try our DataDirect drivers: https://smpdl.sap-ag.de/~sapidp/012002523100008666562008E/cr_datadirect53_win32.zip

And see if too does the 30 minute disconnect.

Thanks again

Don

Former Member
0 Kudos

Thanks Don, i'll wait and see what the db developers say before i try the other drivers.

Seems like we are close. John

0 Kudos

Hi John,

Apparently we did add in a 20 minute timeout. Is this in an application? If so you can add background code to keep the connection active if not then your only option is to be aware that after 20 minutes from the start of the idle time the connection will be dropped and you'll have to log in again.

No registry key to keep the connection open longer.

Thank you

Don

Former Member
0 Kudos

Thanks Don,

Yes you are correwct the timeout occurs after 20 mins. I watched the log file trace write times. When was this timeout introduced, as in previous version of X1 i did not have the problem.

I'm using Crystal reports, not an application. So i do not have the luxury of keeping my connection open in the background. Surely this is a huge regression ?How can i be exprected to manually keep the db connection open ?

Is this the same in Crystal 2008 ? This is very very frustrating tor me at this time, and will have to consider another reporting client if there is not a workaround. CAn the developers not suggest one. I find it hard to believe that the doors are not being knocked down at SAP to resolve this bug.

John

0 Kudos

Hi John,

Getting more info from the developer. I don' t know when they changed the routine but what we should do is pop up the Log On Dialog box and not throw an error message up. Not sure what the reason was to change this other than our Enterprise Products also default to timeout @ 20 minutes so they may have done it for consistency.

Are you OK if we Pop up our log on Dialog box rather than not disconnect at all? The reason being it may be a regression issue and to make a change not to drop the connection this late in the product could be rejected. I'll also suggest we could add a reg key to override the default 20 minute timeout. Which ever is easiest for R&D to code is likely the quickest solution.

In the mean time can you let your users know if they leave the report for more than 20 minutes to log onto the database again? Until we get an answer from the PM's and R&D I can't say if we will fix this or not?

Thanks again

Don

Former Member
0 Kudos

Hello Don, and thanks for your concern and help. Currently this is a real problem to productivity. We have people developing reports, and they open the db, and as we now know the connection is dropped after 20 minutes. There's no way to keep the db open other than continually pressing refresh on an opened report.

Not sure how this ever got past QA, and would be considered an enhancement, but.... let's move on.

Does the same limitation exist in Crystal 2008 ?

I'd be fine with the suggestion of popping up a dialog box asking the question to keep or close the currently opened db's.

Thanks John

Former Member
0 Kudos

A registry key change would be better, and invisible to users. Thanks John

0 Kudos

Hi John,

Our database developers are not local so I have to wait for them to reply tomorrow.

In the mean time try this key: HKEY_CURRENT_USER\Software\Business Objects\Suite 11.5\Crystal Reports\DatabaseOptions - CloseConnectionAfterFirstPass = Yes is the default

Close the Designer down and then change the Key to No and then test again. You must close CR or it writes back the change and may not read it once the designer has been opened.

My test Oracle server is down right now so I can't confirm if this is a usable key.

Thank you

Don

Former Member
0 Kudos

Thanks Don, i checked that key, and it is already set to No

John

0 Kudos

Hi John,

Thanks for testing. Can you set that key to Yes and test again? Close the designer down before making the change.

Update is we should be keeping the log on info, users name and password so if you hit the refresh button we pass on the log on info and reconnect behind the scene. It's kept encrypted in memory. Cr should not be throwing the error.

I'm getting confirmation from the Report Designer Developer and I'll track it once he confirms this is a bug.

I'm also verifying if it's the same in Cr 2008

Thanks again

Don

Edited by: Don Williams on Apr 21, 2010 7:09 AM

Former Member
0 Kudos

Don, setting the key to Yes causes the db connection to close immediately.

I reset it back to No.

Thanks John

0 Kudos

Yes I know that, it disconnects so CR doesn't consume connections and the connections can be used by other products.

What happens if you wait 30 minutes and then click the refresh button in the Designer? Do you get the error and log on prompt or does it refresh?

Thanks again

Don

Former Member
0 Kudos

Scenarios with CloseConnectionAfterFirstPass = No

Start CR, and attach to db. Open a report, and press "refresh" get the "unknown db error" immediately.

Start CR, and attach to db. do nothing for 30 mins.(can already see in log file that sqldisconnect has occured after 20 mins) Open a report, press "refresh" get the "unknown db error"

Under both scenarios i never get the connection prompt.

Thanks John

0 Kudos

Hi John,

What happens if you Open the Designer, Open a report, hit the refresh button and log on and then wait for the timeout?

And the same steps with the registry key set to Yes and No.

Can you also test this using the Native Oracle driver? Open a report and click on Database, Set Location and browse to Oracle Server and select it. Log on and then do the Set Location update and preview. ODBC logging won't show anything since now you are using the Client directly.

Wait 20 minutes and then hit refresh, what happens?

Thanks again

Don

Former Member
0 Kudos

Don, i have crystal 2008 installed. Problem still exists.

Any headway on your end ?

how do i test using the Native Oracle driver?

also datadirect ? does this just install to my existing crystal location?

Thanks John

0 Kudos

Hi John,

Create a new report and in the data explorer scroll down until you see Oracle Server, that's the native driver.

Yes for data direct, just install it locally and then you'll be able to create a new DSN using the CR DataDirect drivers.

Thanks again

Don

Former Member
0 Kudos

Don,

I recently updated to cr 2008. I tried your suggestion of using Oracle Server, and it worked.

So i wanted to see if the datadirect driver would work.

I installed using the link you provided, and was asked to restart my pc for changes to take effect.

As it was late Friday afternoon, i decided to select restart later, and closed down my pc.

Today, my cr2008 directory has been removed. The problkem with this is that this was pre-loaded from

my corporated office(they control the install) so i do not have a way to get this back, without making a special visit

.

Any idea what may have happened ?

Oracle Server is not an option with cr x11.5.11.1470

0 Kudos

Hi John,

Wow, never heard of that happening. Data Direct just installs the ODBC drivers, has nothing to do with CR install.

All I can suggest is you download the trial version and then call Corporate to get the keycode if you need it. Try using the repair install, it may fix it.

Also, what was removed? The location is different for each version of CR.

Does Cr still run?

Direct link to the Trial version: http://www.sap.com/solutions/sapbusinessobjects/sme/freetrials/index.epx

Thank you

Don

Former Member
0 Kudos

Don, i do have the keycode(provided by my corporate office who ordered cr 2008)

If i download the trial version, will i be able to plug in the keycode, and make it a production copy ?

or is it best i go back to corporate and do the cr2008 install again ?

Under program files\business objects

i have a directory call Crystal Reports 11.5(working ok)

Not sure what the cr2008 directory should be or was?

Thanks John

0 Kudos

Yes your keycode will work with the trial version.

11.5 is last version, CR XI R2.

Thank you

Don

Former Member
0 Kudos

Don, my problem is resolved by using Oracle 11g client. Thanks John