Click to See Complete Forum and Search --> : ADO


Nikhild1
July 22nd, 2000, 11:03 AM
hi All,
I am working on an application in which I am trying to insert some data in the SQL database version 7.0 My ADO version is 2.10.3711.9. I have written a VC++ client which "#imports" the ADO dll.

My problem is that when I test this application with a single thread on the executors I can insert the data without any problem. But when a multithreaded application which has more then 10 threads the data inserting abruply fails for one of the thread and I catch a COM error. I am using the Stored procedures to execute the queries at the database and using the command object of ADO to pass parameters. This is how my connect string looks like
driver={SQL Server};server=somemachine;uid=sa;pwd=;database=somedatabase

The error Number I get is
80004005[Microsoft][ODBC SQL Server Driver]Timeout expired

I have been trying to debug this application since a long time.

I have written a small 'dll' which does database authentication. This dll when I tested under heavy load conditions also showed the same error for Multiple threads.

I am not sure if the error is in the SQL server setting or then the ADO code is failing. I am not aware if this is a configuration or an error in the code.
I would be happy if some one could guide me to solve this problem.
Another question I have is does the ADO show memory leaks.

Thanks in Advance,
Nikhil

Johnny101
July 22nd, 2000, 03:10 PM
the default timeout for commands is 90 seconds - try setting it something higher and see what happens. it could be that when all these threads ae executing they arwe blockung one another, causing them to wait and therefore timing out.

hope this helps,

John

John Pirkey
MCSD
http://www.ShallowWaterSystems.com
http://www.stlvbug.org