> On Nov 24, 2016, at 2:59 PM, fabia...@itbizolutions.com.au [firebird-support] > <firebird-support@yahoogroups.com> wrote: > > Just wondering can my app start a transaction with Begin Transaction and > then call a stored procedure that contains the SUSPEND sentence at the end > while the transaction is still opened?
Yes a transaction can include invoking a procedure that includes SUSPEND. > Is there any special consideration > when comencing a transaction other than to ensure the process finished as > soon as posible with a commit or rollback, and no human intervention is > needed in between Begin Transaction and Commit , such as messages on screen > or buttons needed to be pressed, etc? In general, transactions should be kept short, but your definition is limiting. A transaction is a single logical unit of work that should be executed in a consistent setting. If that involves human interaction, fine, as long as you have some mechanism to limit the response time. You don't want to hold a transaction open for hours - and in some applications even for minutes - but sometimes branching and human interaction are important. Firebird's MVCC was designed to provide consistent results while allowing interaction - as opposed to a lock-based serializable consistency that generates read/write deadlocks. Good luck, Ann > > > > ------------------------------------ > > ------------------------------------ > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > Visit http://www.firebirdsql.org and click the Documentation item > on the main (top) menu. Try FAQ and other links from the left-side menu > there. > > Also search the knowledgebases at > http://www.ibphoenix.com/resources/documents/ > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > ------------------------------------ > > Yahoo Groups Links > > >