transaction<T> method
Enters a database transaction, performing the actions within,
and returning the results of f
.
If f
fails, the transaction will be rolled back, and the
responsible exception will be re-thrown.
Whether nested transactions are supported depends on the underlying driver.
Implementation
@override
Future<T> transaction<T>(FutureOr<T> Function(Database) f) {
return _pool.withResource(() async {
var executor = await _next();
return executor.transaction(f);
});
}