ThreadSafe Session

Hello,

I'm using a ThreadSafe Session in a IntraWeb application (Delphi XE4, DOA 4.1.3.5, 32-bit application).

I ask confirm that post on dataset and commit are well managed.
Also, what about savepoint management (DOA_APPLYPOINT and DOA__LOCKPOINT)? In our application several threads share a single OracleSession, so may occurs that several post/apply/commit operations are executing by different threads at the same time.

This because we are investigating on conflict's session problems.

Thanks
 
All database access operations are serialized for the session if ThreadSafe is True. Transaction management (including management of savepoints) remains a responsibility of the application.
 
Ok, of course our application must ensure that each user session commit data and see data with coherence.

But in wich way I can management savepoints? Is there some documentation about it?
When I use TOracleDataset I see a call to savepoint DOA__LOCKPOINT, and when I call ApplyUpdates too (DOA_APPLYPOINT).
I have to redefines these behavior when using ThreadSafe session or they works good?
 
Your application will need to ensure that while the TOracleDataSet is applying its updates, there are no other threads updating the database as well. Setting the ThreadSafe property does not cover transaction management, it merely serializes database access operations from multiple threads.
 
Back
Top