transaction<R> method
Runs body inside a transaction: commits when it returns, rolls back
and rethrows when it throws. Nested calls use savepoints.
Implementation
@override
Future<R> transaction<R>(Future<R> Function(Connection tx) body) =>
_pool.runTx((session) => body(_PostgresTransaction(session, this)));