Page 1 of 1

dbExpress Oracle or OraDirect .NET for multi-threaded db application?

Posted: Tue 11 Mar 2008 13:19
by labate
Hello,

We are developing in .NET 2.0 with Delphi.NET and RAD Studio 2007 an application that must be thread-safe because it has to respond to multi-threaded calls.

We have the choice to use dbExpress for Oracle or OraDirect .NET.

Our developer didn't find any info for dbExpress about connection pool management or multi-threaded capabilities.

So could you tell us what's the recommended component for a multi-threaded application?

Thanks.

Posted: Mon 17 Mar 2008 09:08
by Plash
Both components, dbExpress and OraDirect .NET, can be used in multi-threaded applications.

dbExpress is VCL components, and OraDirect .NET is ADO.NET provider.

So if your project is a VCL forms application, it is better to use dbExpress. If your project is an ASP.NET application, I recommend to use OraDirect .NET or UniDirect .NET.

Posted: Mon 17 Mar 2008 09:23
by labate
Thank you,

We can choose to use ADO.NET or VCL for our application, but as our developers prefer to use TSQLConnection instead of OracleConnection, we are going to use dbExpress.

However, I have read a open bug report on http://qc.codegear.com/wc/qcmain.aspx?d=57326 titled "TSQLConnection.Connect might not be thread-safe?" (Report #57326).

And I wonder if this problem still exist, because one of our developer has tried to call concurrently this component and he experienced failures at times.

Thanks.

Posted: Tue 18 Mar 2008 08:49
by Plash
Probably, the problem still exists. You can try to use the workaround from the error report.

There are less bugs in ADO.NET than in dbExpress.