30.05.2015 11:29, Mark Rotteveel wrote: > To better understand the implications of the pull request by Maxim, I'd > like to know the semantics of isc_tpb_autocommit. Is this documented > anywhere?
I'm not aware of any place. > I'd especially like to know at which point the commit is executed, and > the impact this has on open resources (cursor, blob, etc). As far as I > understand commit_retaining is used. What impact does that have on > visibility of transactions and resource use? Autocommit is executed at the end of every execute/fetch DSQL API call and every start/send/receive/transact BLR API call, and *only* if that API call modified some data or posted some event. As a side effect, this means that a select from a stored procedure that modifies data may cause multiple autocommits. A regular commit-retaining is used internally, so the same visibility/resource characteristics apply. Dmitry ------------------------------------------------------------------------------ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel