Oracle 7 : MultiThread => Access violation in Ora73.dll
Posted: Thu 06 Nov 2008 10:46
Environment :
Delphi 7
Oracle client 7.3.4
Oracle server 7.3
ODAC 6.70.0.41
We have a project with several threads fetching data in the database. Each thread uses its own connection to the database.
After a while, in every thread, we have "access violation in ora73.dll" when fetching data.
In odac sources, I found the problem was coming from this procedure in Oracall.pas :
Why are this three lines commented ?
When uncommented them, our project works fine.
What happens elsewhere if we uncomment these lines ?
Delphi 7
Oracle client 7.3.4
Oracle server 7.3
ODAC 6.70.0.41
We have a project with several threads fetching data in the database. Each thread uses its own connection to the database.
After a while, in every thread, we have "access violation in ora73.dll" when fetching data.
In odac sources, I found the problem was coming from this procedure in Oracall.pas :
Code: Select all
procedure SetThreadSafety(Value: boolean);
begin
if OCI73 in PossibleOCICallStyles then begin
ThreadSafety := Value;
{ if ThreadSafety then
opinit(OCI_EV_TSF)
else }
opinit(OCI_EV_DEF); // for nonblock break
end;
end;
Code: Select all
if ThreadSafety then
opinit(OCI_EV_TSF)
else
What happens elsewhere if we uncomment these lines ?