From eff0d3f06587d720ea24b55541fd6c286c05982a Mon Sep 17 00:00:00 2001 From: leiyuan Date: Wed, 2 Mar 2022 11:17:41 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E8=B6=85=E6=97=B6=E8=87=AA=E5=8A=A8=E5=8F=96=E6=B6=88=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/DotXxlJob.Core/Queue/JobTaskQueue.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs index adf62a3..523049c 100644 --- a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs +++ b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs @@ -128,7 +128,12 @@ namespace DotXxlJob.Core _jobLogger.Log("
----------- xxl-job job execute start -----------
----------- Param:{0}", triggerParam.ExecutorParams); - result = await Executor.Execute(triggerParam, ct); + var exectorToken = ct; + if (triggerParam.ExecutorTimeout > 0) + { + exectorToken = CancellationTokenSource.CreateLinkedTokenSource(exectorToken, new CancellationTokenSource(triggerParam.ExecutorTimeout * 1000).Token).Token; + } + result = await Executor.Execute(triggerParam, exectorToken); _jobLogger.Log("
----------- xxl-job job execute end(finish) -----------
----------- ReturnT:" + result.Code); } From 9a4260fa0dd106a26a3ae47a201c0ca3358a7288 Mon Sep 17 00:00:00 2001 From: leiyuan Date: Wed, 2 Mar 2022 12:49:13 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B6=85=E6=97=B6?= =?UTF-8?q?=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/DotXxlJob.Core/Queue/JobTaskQueue.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs index 523049c..85347a3 100644 --- a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs +++ b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs @@ -129,11 +129,19 @@ namespace DotXxlJob.Core _jobLogger.Log("
----------- xxl-job job execute start -----------
----------- Param:{0}", triggerParam.ExecutorParams); var exectorToken = ct; + CancellationTokenSource timeoutCts = null; if (triggerParam.ExecutorTimeout > 0) { - exectorToken = CancellationTokenSource.CreateLinkedTokenSource(exectorToken, new CancellationTokenSource(triggerParam.ExecutorTimeout * 1000).Token).Token; + timeoutCts = new CancellationTokenSource(triggerParam.ExecutorTimeout * 1000); + exectorToken = CancellationTokenSource.CreateLinkedTokenSource(exectorToken, timeoutCts.Token).Token; } result = await Executor.Execute(triggerParam, exectorToken); + if(timeoutCts != null && timeoutCts.IsCancellationRequested) + { + result = ReturnT.FAIL_TIMEOUT; + timeoutCts.Dispose(); + timeoutCts = null; + } _jobLogger.Log("
----------- xxl-job job execute end(finish) -----------
----------- ReturnT:" + result.Code); } From 834933aa17b65a3aaac5d2b9a98bbec4e1353725 Mon Sep 17 00:00:00 2001 From: leiyuan Date: Thu, 3 Mar 2022 10:04:36 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9swager=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/DotXxlJob.Core/Queue/JobTaskQueue.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs index 85347a3..3e8e8df 100644 --- a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs +++ b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs @@ -138,7 +138,7 @@ namespace DotXxlJob.Core result = await Executor.Execute(triggerParam, exectorToken); if(timeoutCts != null && timeoutCts.IsCancellationRequested) { - result = ReturnT.FAIL_TIMEOUT; + result = new ReturnT(502, result.Msg); timeoutCts.Dispose(); timeoutCts = null; } From 1fd77e8f2364d984e16833fa14007b830dae7df1 Mon Sep 17 00:00:00 2001 From: leiyuan Date: Thu, 3 Mar 2022 10:09:33 +0800 Subject: [PATCH 4/4] =?UTF-8?q?Revert=20"=E4=BF=AE=E6=94=B9swager=E9=85=8D?= =?UTF-8?q?=E7=BD=AE"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 834933aa17b65a3aaac5d2b9a98bbec4e1353725. --- src/DotXxlJob.Core/Queue/JobTaskQueue.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs index 3e8e8df..85347a3 100644 --- a/src/DotXxlJob.Core/Queue/JobTaskQueue.cs +++ b/src/DotXxlJob.Core/Queue/JobTaskQueue.cs @@ -138,7 +138,7 @@ namespace DotXxlJob.Core result = await Executor.Execute(triggerParam, exectorToken); if(timeoutCts != null && timeoutCts.IsCancellationRequested) { - result = new ReturnT(502, result.Msg); + result = ReturnT.FAIL_TIMEOUT; timeoutCts.Dispose(); timeoutCts = null; }