Posted By: Alberto Pilat ThreadSafe Session - 02/24/14 10:54 AM
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
Posted By: Marco Kalter Re: ThreadSafe Session - 02/24/14 11:13 AM
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.
Posted By: Alberto Pilat Re: ThreadSafe Session - 02/24/14 12:23 PM
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?
Posted By: Marco Kalter Re: ThreadSafe Session - 02/26/14 10:33 AM
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.
© Allround Automations forums