is it possible to / how can you check if you are currently within a
transaction?
I’d like a method to raise an error if it is called from outside of a
transaction, but run normally otherwise.
Checking the transaction documentation:
I don’t see a way to accomplish this…?
On 19 Mar 2011, at 19:30, GS [email protected] wrote:
is it possible to / how can you check if you are currently within a
transaction?
You could check connection.open_transactions
On postgres you can ask the adapter directly if my memory is correct
Fred
On Saturday 19 March 2011, GS wrote:
is it possible to / how can you check if you are currently within a
transaction?
I’d like a method to raise an error if it is called from outside of a
transaction, but run normally otherwise.
You could just wrap the code in your method in a transaction block. As
the docs say:
+transaction+ calls can be nested. By default, this makes all database
statements in the nested transaction block become part of the parent
transaction.
I.e., a nested transaction block does not result in a nested
transaction. If you want the latter, you have to use
transaction(:requires_new => true).
Michael
–
Michael S.
mailto:[email protected]
http://www.schuerig.de/michael/