diff options
Diffstat (limited to 'src/clojure/contrib/sql.clj')
-rw-r--r-- | src/clojure/contrib/sql.clj | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/clojure/contrib/sql.clj b/src/clojure/contrib/sql.clj index ca9e1c71..77ea1e60 100644 --- a/src/clojure/contrib/sql.clj +++ b/src/clojure/contrib/sql.clj @@ -42,9 +42,12 @@ (defmacro transaction "Evaluates body as a transaction on the open database connection. Any - nested transactions are absorbed into the outermost transaction. All - database updates are committed together as a group after evaluating the - outermost body, or rolled back on any uncaught exception." + nested transactions are absorbed into the outermost transaction. By + default, all database updates are committed together as a group after + evaluating the outermost body, or rolled back on any uncaught + exception. If set-rollback-only is called within scope of the outermost + transaction, the entire transaction will be rolled back rather than + committed when complete." [& body] `(transaction* (fn [] ~@body))) |