From 8f13cf1449bd8903ff465a4f12ed89ecbac858a4 Mon Sep 17 00:00:00 2001 From: pingcap-github-bot Date: Fri, 27 Dec 2019 23:25:06 +0800 Subject: [PATCH] executor: add rollback in `releaseSysSession` (#14272) --- executor/simple.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/executor/simple.go b/executor/simple.go index 2ad86d9bce0a..a62b02430c4e 100644 --- a/executor/simple.go +++ b/executor/simple.go @@ -75,8 +75,15 @@ func (e *SimpleExec) getSysSession() (sessionctx.Context, error) { } func (e *SimpleExec) releaseSysSession(ctx sessionctx.Context) { + if ctx == nil { + return + } dom := domain.GetDomain(e.ctx) sysSessionPool := dom.SysSessionPool() + if _, err := ctx.(sqlexec.SQLExecutor).Execute(context.Background(), "rollback"); err != nil { + ctx.(pools.Resource).Close() + return + } sysSessionPool.Put(ctx.(pools.Resource)) }