OCI Invalid Handle

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
prr1234
Posts: 4
Joined: Tue 25 May 2010 08:37

OCI Invalid Handle

Post by prr1234 » Tue 25 May 2010 08:57

Hi,

I have a WCF service which uses DOTCONNECT To connect to the oracle database. I am using datareaders to read the data through this service to return to the client developed in WPF.

First I execute the SQL on the DB , then I start fetch the data in repeated calls from the client. this is to be able to show the progress to the user, I fetch 100 rows at a time.

This works fine while working on datareaders opened over a plain SQL SELECT statement. that is, I get the datareader as returned by executing the statement as below

IDataReader dr = command.ExecuteReader();

In this case, I can fetch all rows without any problem with repeated calls from the client.

I have a second case where I get the OCI INVALID HANDLE problem. This case is that I have a PLSQL block which opens several cursors upon exectuion. I open one datareader on each cursor parameter. Then for each datareader I make repeated calls from the client to read 100 rows at a time. This works fine for certain number of rows, but, afterwords I get the OCI INVALID HANDLE exception for DR.READ() statement. Debugging this showed me that the CURSOR of the datareader datareader ISCLOSED. (ISCLOSED property is set to TRUE automatically) after some time. This time period is random. sometimes, I get the INVALID HANDLE message after fetching 10 rows and sometimes after fetching 500 rows.

Can you guys see any reasons for this behavior? Please suggest me an alternatives if you have. Sending sample code for this is quite complicated.

The exception Details are as follows

at Devart.Data.Oracle.bq.b(Int32 A_0)
at Devart.Data.Oracle.an.e(Int32 A_0)
at Devart.Data.Oracle.an.b(ap[] A_0, Byte[] A_1, Hashtable A_2)
at Devart.Data.Oracle.OracleDataReader.a()
at Devart.Data.Oracle.OracleDataReader.Read()

Best Regards,
Prabhakar.

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Wed 26 May 2010 11:06

We have reproduced the problem. We will investigate it and notify you about the results.

prr1234
Posts: 4
Joined: Tue 25 May 2010 08:37

Post by prr1234 » Mon 31 May 2010 10:22

Hi,

Thank you for looking into this issue. Any time line on addressing this issue will be helpful for us to plan the development.

Best Regards,
Prabhakar.

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Tue 01 Jun 2010 14:00

We will fix the problem and include the fix to the nearest build which we plan to release in about two weeks.

prr1234
Posts: 4
Joined: Tue 25 May 2010 08:37

Post by prr1234 » Wed 23 Jun 2010 07:32

Hi,

Any update on the release data of the fix for this issue?

Regards,
Prabhakar.

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Fri 25 Jun 2010 10:58

The problem is fixed. We plan to release the build with the fix in several days. We will inform you here when the build is published.

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Fri 09 Jul 2010 17:12

We've released the 5.70.146 build containing the fix. The build can be downloaded from
http://www.devart.com/dotconnect/oracle/download.html
(the trial version) or from Registered Users' Area (for users with active subscription only):
http://secure.devart.com/

For more information on improvements and fixes available in the 5.70.146 version, please refer to
http://www.devart.com/forums/viewtopic.php?t=18424

Post Reply