solve duplicate log in commit and rollback

This commit is contained in:
Lyi 2020-07-30 16:05:09 +08:00
parent 4a6b8c29bf
commit f5020edff2
1 changed files with 2 additions and 43 deletions

View File

@ -4,12 +4,6 @@
package xorm package xorm
import (
"time"
"xorm.io/xorm/log"
)
// Begin a transaction // Begin a transaction
func (session *Session) Begin() error { func (session *Session) Begin() error {
if session.isAutoCommit { if session.isAutoCommit {
@ -33,24 +27,7 @@ func (session *Session) Rollback() error {
session.isCommitedOrRollbacked = true session.isCommitedOrRollbacked = true
session.isAutoCommit = true session.isAutoCommit = true
start := time.Now() return session.tx.Rollback()
needSQL := session.DB().NeedLogSQL(session.ctx)
if needSQL {
session.engine.logger.BeforeSQL(log.LogContext{
Ctx: session.ctx,
SQL: "ROLL BACK",
})
}
err := session.tx.Rollback()
if needSQL {
session.engine.logger.AfterSQL(log.LogContext{
Ctx: session.ctx,
SQL: "ROLL BACK",
ExecuteTime: time.Now().Sub(start),
Err: err,
})
}
return err
} }
return nil return nil
} }
@ -62,25 +39,7 @@ func (session *Session) Commit() error {
session.isCommitedOrRollbacked = true session.isCommitedOrRollbacked = true
session.isAutoCommit = true session.isAutoCommit = true
start := time.Now() if err := session.tx.Commit(); err != nil {
needSQL := session.DB().NeedLogSQL(session.ctx)
if needSQL {
session.engine.logger.BeforeSQL(log.LogContext{
Ctx: session.ctx,
SQL: "COMMIT",
})
}
err := session.tx.Commit()
if needSQL {
session.engine.logger.AfterSQL(log.LogContext{
Ctx: session.ctx,
SQL: "COMMIT",
ExecuteTime: time.Now().Sub(start),
Err: err,
})
}
if err != nil {
return err return err
} }