diff --git a/internal/sqladapter/database.go b/internal/sqladapter/database.go index 27cf5b3f7d190da140091e817ca72416e7bf4ef4..ed26ce189e2365b485b87659a385c7591d041383 100644 --- a/internal/sqladapter/database.go +++ b/internal/sqladapter/database.go @@ -187,14 +187,11 @@ func (d *database) Close() error { d.cachedStatements.Clear() // Closes prepared statements as well. tx := d.Transaction() - if tx == nil { - // Not within a transaction. - return d.sess.Close() - } - - if !tx.Committed() { + if tx != nil && !tx.Committed() { tx.Rollback() } + + return d.sess.Close() } return nil }