From 529fc03a9cb8751d4724cd204d943679f1748a3d Mon Sep 17 00:00:00 2001 From: tison Date: Mon, 23 Aug 2021 12:08:34 +0800 Subject: [PATCH] slow_query: cancel send taskList if ctx is done (#27471) * slow_query: cancel send taskList if ctx is done Signed-off-by: tison --- executor/slow_query.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/executor/slow_query.go b/executor/slow_query.go index 8633f7a5e00f0..46abdb9c201d0 100755 --- a/executor/slow_query.go +++ b/executor/slow_query.go @@ -433,7 +433,11 @@ func (e *slowQueryRetriever) parseSlowLog(ctx context.Context, sctx sessionctx.C if err != nil { t := slowLogTask{} t.resultCh = make(chan parsedSlowLog, 1) - e.taskList <- t + select { + case <-ctx.Done(): + return + case e.taskList <- t: + } e.sendParsedSlowLogCh(ctx, t, parsedSlowLog{nil, err}) } if len(logs) == 0 || len(logs[0]) == 0 {