Page 1 of 1

Problems with Non-Returning Queries in Version 4 drivers

Posted: Fri 28 Sep 2007 15:08
by tripunkt
Hello,

I have SEVERE problems with non-returning queries after upgrading the dbExpress drivers to the latest version (4.0). The application will just hang. This behaviour is neither exactly reproducible nor predictable, but it is just very annoying. Does anyone experience similiar problems or have a fix for that?

Thanks
Chris

I have attached a callstack of a frozen query:

:7c91eb94 ntdll.KiFastSystemCallRet
:7c91e9c0 ntdll.ZwWaitForSingleObject + 0xc
:719b57c9 ; C:\WINDOWS\system32\MSWSOCK.dll
:71a14379 WS2_32.WSARecv + 0x61
:71a32ea3 wsock32.recv + 0x33
:05a27bdd ; X:\exe\dbexpmda40.dll
:05a23f1a ; X:\exe\dbexpmda40.dll
:05a260bb ; X:\exe\dbexpmda40.dll
:05a25487 ; X:\exe\dbexpmda40.dll
:05a254d5 ; X:\exe\dbexpmda40.dll
:05a25644 ; X:\exe\dbexpmda40.dll
:05a2b482 ; X:\exe\dbexpmda40.dll
:05a32502 ; X:\exe\dbexpmda40.dll
:05a32976 ; X:\exe\dbexpmda40.dll
:05a21bfb ; X:\exe\dbexpmda40.dll
:05a46150 ; X:\exe\dbexpmda40.dll
:05a43e71 ; X:\exe\dbexpmda40.dll
:05a571e0 dbexpmda40.DBXCommand_Execute + 0x1c
DBXDynalink.TDBXDynalinkCommand.DerivedExecuteQuery
DBXCommon.TDBXCommand.ExecuteQuery
SqlExpr.TCustomSQLDataSet.ExecuteStatement
SqlExpr.TCustomSQLDataSet.InternalOpen
DB.TDataSet.DoInternalOpen
DB.TDataSet.OpenCursor(???)
SqlExpr.TCustomSQLDataSet.OpenCursor(???)
DB.TDataSet.SetActive(???)
DB.TDataSet.Open

Posted: Mon 01 Oct 2007 11:01
by Antaeus
Please specify the exact version of your IDE (including installed updates).

Posted: Mon 01 Oct 2007 11:26
by tripunkt
I use Delphi 2007 for Win32 Release 11.0.2627.5503 with no updates installed.

Thanks,
Chris

Posted: Tue 02 Oct 2007 06:56
by Antaeus
If you manage to reproduce this problem in a small application, please send it to dbxmda*crlab*com.
If you are not, please describe conditions in which this problem appears in more details. The following information will be useful:
- the exact version of DbxMda;
- the exact version of MySQL server;
- what storage engine do you use (InnoDB, MyISAM, etc.);
- will the problem disappear if you change the storage engine (e.g. from InnoDB to MyISAM);
- do you use the FetchAll=False mode?
- on what operations does your application hang (SELECT, UPDATE, etc.)?
- is your application multithreaded?
- any other information you consider significant.

Any update on this?

Posted: Thu 04 Oct 2007 14:49
by macaw
Yes, I have exactly the same problem as you are having but I am using Delphi 6. I only just bought the driver from Core Lab a few weeks ago and started having intermittent problems with select statements. It seems to be more likely to happen on larger selects.

Do earlier versions work and are they available?

Posted: Mon 08 Oct 2007 07:38
by Antaeus
Installing a previous version of DbxMda is not a good solution. We need to know more about the problem to reproduce and fix it. Please provide the information I mentioned in my previous post.