We simply created a server (linux daemon) and publish a function like this one :
Code: Select all
function TOracleInterface.OpenLowLevel(AThread: TIdPeerThread; AReceiveParams: TReceiveParams; AReceiveText: string; var AError_ID: integer; var ANotifyReportLog : Boolean; var AUpdateActivity : Boolean ) : string ;
var VConnection : TOraSession ;
begin
try
VConnection := TOraSession.Create( NIL ) ;
VConnection.ConnectString := 'evo_admin/oracle@DATA24' ;
VConnection.Connected := True ;
finally
VConnection.Free ;
end ;
end ;
If we call it simulteneously (2 to 10 users) (ie : different threads) it crashes very quickly.
If we remove the connected := true, it runs fine.
Any idea or experience in this domain ?
Please note that we also use ODAC on MSWindows/multithreaded services and we do not experience such problems.