19.04.2017 18:54, Leyne, Sean wrote:
> I have client with over 500 connection to a database, I am pretty sure that:
>
> 1-  there is no way to ensure that all the read-only processes can start a 
> transaction without the possibility that another read/write transaction 
> started in between them, or
>
> 2- that the cost of any approach to ensure such "alignment" will not be so 
> significant that it compromises system performance.

   The simplest method: ON COMMIT trigger waiting for some flag to be unset. 
You set flag, 
start your transactions and then reset the flag. Performance penalty is minimal 
because a) 
is applied only to transactions that writed to targeted tables; b) not more 
than time 
needed to start 5 transactions which is small.

> Reminder: Nikolay worked for BroadView for several years.  If the solution 
> was simple, we wouldn't be having this discussion right now.

   Taking into account that you consider ad-hock queries to be a good solution 
from 
performance POV, I'm sure that Nikolay did his best to make your system work.

-- 
   WBR, SD.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to