On 25/06/2014 05:10, Dmitry Yemanov wrote: > 25.06.2014 11:52, Roman Simakov wrote: > >> present at the opening cursor. IMO it's bad style to open cursor. It >> may keep open transaction (it's also not good but RO+RC possible) but >> it should not keep open cursor. I do not understand why to open cursor >> at all if you are not going to fetch right now. >> Open, read correct result, close. Anyway, developers who want to build >> such "strange" systems still can say to server to use >> isc_tpb_insensitive_cursor. > Maybe 95% of all Delphi apps use such "strange" approach. It was always > a power of Firebird to work with cursors this way, especially with RC RO > transactions. I strongly disagree with forcing them to choose a > different approach or recompile their apps. > > The problem with RC+RO consistent transaction blocking GC may be gone if the engine runs the query till the end and store it in temporary buffer.
Ok, this may not be what the user asked, but this is already done at smaller level anyway, when connected via remote. Of course, this should be done async to not slow down the execute function. And it may be done with some smartness (after some seconds, or after some new number of new transactions started). Adriano ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel