I'm testing my application making a lost connection simulation with Oracle database. I'm using dbexpoda.dll version 6.3.4.0 to comunicate with database and
I'm getting an exception in this point.
I followed the next steps to make the test:
. While the application is running, I close the net interface used to connect my application with Oracle database, simulating a shutdown of comunications.
. More or less at same time, I execute an update statement from my application
. For 90 seconds, more or less, it keeps trying execute the statement and I get several errors ORA-03113
. After this, my application follows with the execution and I try close the connection
. In this time, I get the next exception: Access violation at address 03813FCE in module 'dbexpoda.dll'. Read of address 00000034.
I'm debugging my application and I can go until point that raises the exception:
The same test made with dbexpoda.dll version 4.20.0.8 follows the same steps but it doesn't raise any exception, so:SqlExpr.TSqlConnection.Connection := False
|
-> DB.TCustomConnection.SetConnected(False);
|
-> SqlExpr.TSqlConnection.DoDisconnect
|
-> SqlExpr.TSqlConnection.CloseDataSets
|
-> SqlExpr.TCustomSQLDataSet.FreeStatements
|
-> FreeCursor;
-> CloseStatement;
-> FSQLCommand := nil; >> raises Access Violation !!!
Is it possible that the dbexpoda.dll version 6.3.4 has any bug?
If not, Does someone has any clue about why can be raised this exception?
My application is running on Windows 7 and it is developed with Delphi 7.
Regards.