Skip to content

Commit 47b5006

Browse files
authored
Clear thread name in BaseTaskProcessor (#11422)
1 parent be66035 commit 47b5006

1 file changed

Lines changed: 54 additions & 46 deletions

File tree

  • dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task

dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/BaseTaskProcessor.java

Lines changed: 54 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,9 @@
1717

1818
package org.apache.dolphinscheduler.server.master.runner.task;
1919

20-
import static org.apache.dolphinscheduler.common.Constants.ADDRESS;
21-
import static org.apache.dolphinscheduler.common.Constants.DATABASE;
22-
import static org.apache.dolphinscheduler.common.Constants.JDBC_URL;
23-
import static org.apache.dolphinscheduler.common.Constants.OTHER;
24-
import static org.apache.dolphinscheduler.common.Constants.PASSWORD;
25-
import static org.apache.dolphinscheduler.common.Constants.SINGLE_SLASH;
26-
import static org.apache.dolphinscheduler.common.Constants.USER;
27-
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.CLUSTER;
28-
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.TASK_TYPE_DATA_QUALITY;
29-
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.TASK_TYPE_K8S;
30-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_NAME;
31-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_TABLE;
32-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_TYPE;
33-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.SRC_CONNECTOR_TYPE;
34-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.SRC_DATASOURCE_ID;
35-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.TARGET_CONNECTOR_TYPE;
36-
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.TARGET_DATASOURCE_ID;
37-
20+
import com.zaxxer.hikari.HikariDataSource;
21+
import lombok.NonNull;
22+
import org.apache.commons.collections.CollectionUtils;
3823
import org.apache.dolphinscheduler.common.Constants;
3924
import org.apache.dolphinscheduler.common.utils.HadoopUtils;
4025
import org.apache.dolphinscheduler.common.utils.JSONUtils;
@@ -80,8 +65,8 @@
8065
import org.apache.dolphinscheduler.spi.enums.DbType;
8166
import org.apache.dolphinscheduler.spi.enums.ResourceType;
8267
import org.apache.dolphinscheduler.spi.utils.StringUtils;
83-
84-
import org.apache.commons.collections.CollectionUtils;
68+
import org.slf4j.Logger;
69+
import org.slf4j.LoggerFactory;
8570

8671
import java.util.ArrayList;
8772
import java.util.HashMap;
@@ -93,12 +78,23 @@
9378
import java.util.stream.Collectors;
9479
import java.util.stream.Stream;
9580

96-
import org.slf4j.Logger;
97-
import org.slf4j.LoggerFactory;
98-
99-
import com.zaxxer.hikari.HikariDataSource;
100-
101-
import lombok.NonNull;
81+
import static org.apache.dolphinscheduler.common.Constants.ADDRESS;
82+
import static org.apache.dolphinscheduler.common.Constants.DATABASE;
83+
import static org.apache.dolphinscheduler.common.Constants.JDBC_URL;
84+
import static org.apache.dolphinscheduler.common.Constants.OTHER;
85+
import static org.apache.dolphinscheduler.common.Constants.PASSWORD;
86+
import static org.apache.dolphinscheduler.common.Constants.SINGLE_SLASH;
87+
import static org.apache.dolphinscheduler.common.Constants.USER;
88+
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.CLUSTER;
89+
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.TASK_TYPE_DATA_QUALITY;
90+
import static org.apache.dolphinscheduler.plugin.task.api.TaskConstants.TASK_TYPE_K8S;
91+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_NAME;
92+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_TABLE;
93+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.COMPARISON_TYPE;
94+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.SRC_CONNECTOR_TYPE;
95+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.SRC_DATASOURCE_ID;
96+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.TARGET_CONNECTOR_TYPE;
97+
import static org.apache.dolphinscheduler.plugin.task.api.utils.DataQualityConstants.TARGET_DATASOURCE_ID;
10298

10399
public abstract class BaseTaskProcessor implements ITaskProcessor {
104100

@@ -185,27 +181,39 @@ public boolean action(TaskAction taskAction) {
185181
if (StringUtils.isNotEmpty(threadLoggerInfoName)) {
186182
Thread.currentThread().setName(threadLoggerInfoName);
187183
}
188-
switch (taskAction) {
189-
case STOP:
190-
return stop();
191-
case PAUSE:
192-
return pause();
193-
case TIMEOUT:
194-
return timeout();
195-
case SUBMIT:
196-
return submit();
197-
case RUN:
198-
return run();
199-
case DISPATCH:
200-
return dispatch();
201-
case RESUBMIT:
202-
return resubmit();
203-
default:
204-
logger.error("unknown task action: {}", taskAction);
184+
boolean result = false;
185+
try {
186+
switch (taskAction) {
187+
case STOP:
188+
result = stop();
189+
break;
190+
case PAUSE:
191+
result = pause();
192+
break;
193+
case TIMEOUT:
194+
result = timeout();
195+
break;
196+
case SUBMIT:
197+
result = submit();
198+
break;
199+
case RUN:
200+
result = run();
201+
break;
202+
case DISPATCH:
203+
result = dispatch();
204+
break;
205+
case RESUBMIT:
206+
result = resubmit();
207+
break;
208+
default:
209+
logger.error("unknown task action: {}", taskAction);
210+
}
211+
return result;
212+
} finally {
213+
// reset thread name
214+
Thread.currentThread().setName(threadName);
215+
205216
}
206-
// reset thread name
207-
Thread.currentThread().setName(threadName);
208-
return false;
209217
}
210218

211219
protected boolean resubmit() {

0 commit comments

Comments
 (0)