Assertion failure (D:\Projects\Delphi\DAC\Source\MemData.pas, line 6354)

Discussion of open issues, suggestions and bugs regarding usage of dbExpress drivers for Oracle in Delphi and C++Builder
Post Reply
Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Assertion failure (D:\Projects\Delphi\DAC\Source\MemData.pas, line 6354)

Post by Vincent Pfammatter » Wed 08 Nov 2006 15:01

I have this exception when a query execute:
"Assertion failure (D:\Projects\Delphi\DAC\Source\MemData.pas, line 6354)"

After this message, all database queries return a violation access memory.

I cannot reproduce this problem in my lab, but I have this problem every day by my customers.

Can you help me, please?

Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Post by Vincent Pfammatter » Wed 08 Nov 2006 15:27

I forget this information:
I use dbepxoda.dll 2.50.6.0 and Delphi 2005.

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Mon 13 Nov 2006 13:09

We cannot reproduce this problem. Try to compose a sample that demonstrates the problem and send it to the ODAC support address including the script to create server objects.

Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Post by Vincent Pfammatter » Wed 20 Dec 2006 15:39

We cannot reproduce this problem too.
The application has violation access memory or freeze during database access with stored procedure or SQL query or connection to database. But it's only one time per week per application on average.
It's possible to log dbexpoda's information?

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Thu 21 Dec 2006 09:50

The Core Lab dbExpress driver doesn't have a possibility to log an exceptions information. You can use some third party tools to do that.

Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Post by Vincent Pfammatter » Thu 21 Dec 2006 13:29

What kind of third party tools do you recommend?

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Fri 22 Dec 2006 09:17

We mean tools that save the call stack when exception is raised. But you can use them only if you have the Professional edition of the driver.
Anyway the call stack information is not enough for us to reproduce the problem. You can try to create a log manually by adding lines to procedures in your program, that will write information about a current operation to file.

Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Post by Vincent Pfammatter » Mon 15 Jan 2007 17:35

I can reproduce the problem with version 2.50.6.0 and ORACLE NET.

If a close the net connection during a Query SQL, sometimes the application disappears (crash) or has a violation acces memory. It is very hard to reproduce.

After a long investigation, I found the last line executed before crash:
The function OCIHandleFree in the method TOraCursor.FreeCursor.

Do you have a idea to resolve my problem?

Vincent Pfammatter
Posts: 8
Joined: Wed 08 Nov 2006 14:50
Location: Swiss

Post by Vincent Pfammatter » Fri 20 Apr 2007 13:14

I test the new version 3.1.0.8 and I haven't violation memory or assertion failure.

However, it keeps a little problem. After a connection's loss and a correct reconnection, opening of a query generates always exception "Unable to execute Query".
Set to false the property TSQLQuery.Prepared resolves this problem.

For me it is resolved.
Thank you for your help.

Post Reply