This is an automated email from the ASF dual-hosted git repository.
wenjun pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new 1eedc16ac8 [DSIP-87] Remove cache configuration of task (#16892)
1eedc16ac8 is described below
commit 1eedc16ac8454b308cd116ee6ce3a78185755d3d
Author: Wenjun Ruan <[email protected]>
AuthorDate: Mon Dec 16 14:27:07 2024 +0800
[DSIP-87] Remove cache configuration of task (#16892)
---
docs/docs/en/faq.md | 16 --
docs/docs/en/guide/task/appendix.md | 1 -
.../src/test/resources/workflow-json/test.json | 1 -
.../api/controller/TaskInstanceController.java | 23 ---
.../TaskInstanceRemoveCacheResponse.java | 44 -----
.../apache/dolphinscheduler/api/enums/Status.java | 3 -
.../api/service/TaskInstanceService.java | 10 -
.../api/service/impl/TaskInstanceServiceImpl.java | 29 ---
.../api/service/TaskInstanceServiceTest.java | 26 ---
.../apache/dolphinscheduler/common/enums/Flag.java | 1 -
.../src/test/resources/sql/mysql_ddl.sql | 3 -
.../dao/entity/TaskDefinition.java | 6 -
.../dao/entity/TaskDefinitionLog.java | 1 -
.../dolphinscheduler/dao/entity/TaskInstance.java | 6 -
.../dao/mapper/TaskInstanceMapper.java | 4 -
.../dao/repository/TaskInstanceDao.java | 16 --
.../dao/repository/impl/TaskInstanceDaoImpl.java | 20 --
.../dolphinscheduler/dao/utils/TaskCacheUtils.java | 213 ---------------------
.../dao/mapper/TaskDefinitionLogMapper.xml | 6 +-
.../dao/mapper/TaskDefinitionMapper.xml | 8 +-
.../dao/mapper/TaskInstanceMapper.xml | 16 +-
.../src/main/resources/sql/dolphinscheduler_h2.sql | 4 -
.../main/resources/sql/dolphinscheduler_mysql.sql | 7 +-
.../resources/sql/dolphinscheduler_postgresql.sql | 5 -
.../3.3.0_schema/mysql/dolphinscheduler_ddl.sql | 115 +++++++++++
.../postgresql/dolphinscheduler_ddl.sql | 114 +++++++++++
.../dao/utils/TaskCacheUtilsTest.java | 204 --------------------
.../task/runnable/AbstractTaskInstanceFactory.java | 2 -
.../task/runnable/RetryTaskInstanceFactory.java | 1 -
.../dolphinscheduler/service/model/TaskNode.java | 10 -
.../service/process/ProcessServiceImpl.java | 1 -
.../service/process/ProcessServiceTest.java | 2 -
dolphinscheduler-ui/src/locales/en_US/project.ts | 2 -
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 2 -
.../src/service/modules/task-instances/index.ts | 10 -
.../projects/task/components/node/fields/index.ts | 1 -
.../task/components/node/fields/use-cache.ts | 29 ---
.../task/components/node/fields/use-run-flag.ts | 3 +-
.../projects/task/components/node/format-data.ts | 2 -
.../node/tasks/use-aliyun-serverless-spark.ts | 1 -
.../task/components/node/tasks/use-chunjun.ts | 1 -
.../task/components/node/tasks/use-data-factory.ts | 1 -
.../task/components/node/tasks/use-datasync.ts | 1 -
.../task/components/node/tasks/use-datax.ts | 1 -
.../task/components/node/tasks/use-dinky.ts | 1 -
.../projects/task/components/node/tasks/use-dms.ts | 1 -
.../projects/task/components/node/tasks/use-dvc.ts | 1 -
.../projects/task/components/node/tasks/use-emr.ts | 1 -
.../task/components/node/tasks/use-flink-stream.ts | 1 -
.../task/components/node/tasks/use-flink.ts | 1 -
.../task/components/node/tasks/use-hive-cli.ts | 1 -
.../task/components/node/tasks/use-http.ts | 1 -
.../task/components/node/tasks/use-java.ts | 1 -
.../task/components/node/tasks/use-jupyter.ts | 1 -
.../projects/task/components/node/tasks/use-k8s.ts | 1 -
.../task/components/node/tasks/use-kubeflow.ts | 1 -
.../task/components/node/tasks/use-linkis.ts | 1 -
.../task/components/node/tasks/use-mlflow.ts | 1 -
.../projects/task/components/node/tasks/use-mr.ts | 1 -
.../task/components/node/tasks/use-openmldb.ts | 1 -
.../task/components/node/tasks/use-procedure.ts | 1 -
.../task/components/node/tasks/use-python.ts | 1 -
.../task/components/node/tasks/use-pytorch.ts | 1 -
.../task/components/node/tasks/use-remote-shell.ts | 1 -
.../task/components/node/tasks/use-sagemaker.ts | 1 -
.../task/components/node/tasks/use-sea-tunnel.ts | 1 -
.../task/components/node/tasks/use-shell.ts | 1 -
.../task/components/node/tasks/use-spark.ts | 1 -
.../projects/task/components/node/tasks/use-sql.ts | 1 -
.../task/components/node/tasks/use-sqoop.ts | 1 -
.../task/components/node/tasks/use-zeppelin.ts | 1 -
.../views/projects/task/components/node/types.ts | 4 +-
.../workflow/components/dag/dag-context-menu.tsx | 15 +-
.../projects/workflow/components/dag/index.tsx | 8 -
74 files changed, 242 insertions(+), 784 deletions(-)
diff --git a/docs/docs/en/faq.md b/docs/docs/en/faq.md
index 7ebc9dc811..52a77f01f5 100644
--- a/docs/docs/en/faq.md
+++ b/docs/docs/en/faq.md
@@ -752,20 +752,4 @@ start API server. If you want disabled when Python gateway
service you could cha
---
-## Q:How to determine whether a task has been cached when the cache is
executed, that is, how to determine whether a task can use the running result
of another task?
-
-A: For the task identified as `Cache Execution`, when the task starts, a cache
key will be generated, and the key is composed of the following fields and
hashed:
-
-- task definition: the id of the task definition corresponding to the task
instance
-- task version: the version of the task definition corresponding to the task
instance
-- task input parameters: including the parameters passed in by the upstream
node and the global parameter, the parameters referenced by the parameter list
of the task definition and the parameters used by the task definition using
`${}`
-- environment configuration: the actual configuration content of the
environment configuration under the environment name, that is, the actual
configuration content in the `security` - `environment management`
-
-If the task with cache identification runs, it will find whether there is data
with the same cache key in the database,
-
-- If there is, copy the task instance and update the corresponding data
-- If not, the task runs as usual, and the task instance data is stored in the
cache when the task is completed
-
-If you do not need to cache, you can right-click the node to run `Clear cache`
in the workflow instance to clear the cache, which will clear the cache data of
the current input parameters under this version.
-
We will collect more FAQ later
diff --git a/docs/docs/en/guide/task/appendix.md
b/docs/docs/en/guide/task/appendix.md
index 4569216617..57cb5dbc31 100644
--- a/docs/docs/en/guide/task/appendix.md
+++ b/docs/docs/en/guide/task/appendix.md
@@ -8,7 +8,6 @@ DolphinScheduler task plugins share some common default
parameters. Each type of
|--------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Node Name | The name of the task. Node names within the same
workflow must be unique.
|
| Run Flag | Indicating whether to schedule the task. If you
do not need to execute the task, you can turn on the `Prohibition execution`
switch.
|
-| Cache Execution | Indicating whether this node needs to be cached.
If it is cached, the same identifier (same task version, same task definition,
same parameter input) task is cached. When the task has been cached, it will
not be executed again, and the result will be reused directly.
|
| Description | Describing the function of this node.
|
| Task Priority | When the number of the worker threads is
insufficient, the worker executes task according to the priority. When two
tasks have the same priority, the worker will execute them in `first come first
served` fashion.
|
| Worker Group | Machines which execute the tasks. If you choose
`default`, scheduler will send the task to a random worker.
|
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/test.json
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/test.json
index 9601a93a9b..c3cb8a5741 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/test.json
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/test.json
@@ -53,7 +53,6 @@
"taskParamList" : [ ],
"taskParamMap" : null,
"flag" : "YES",
- "isCache" : "NO",
"taskPriority" : "MEDIUM",
"userName" : null,
"projectName" : null,
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskInstanceController.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskInstanceController.java
index 777da9bc21..d5f41c6aa1 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskInstanceController.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskInstanceController.java
@@ -19,13 +19,11 @@ package org.apache.dolphinscheduler.api.controller;
import static
org.apache.dolphinscheduler.api.enums.Status.FORCE_TASK_SUCCESS_ERROR;
import static
org.apache.dolphinscheduler.api.enums.Status.QUERY_TASK_LIST_PAGING_ERROR;
-import static
org.apache.dolphinscheduler.api.enums.Status.REMOVE_TASK_INSTANCE_CACHE_ERROR;
import static
org.apache.dolphinscheduler.api.enums.Status.TASK_SAVEPOINT_ERROR;
import static org.apache.dolphinscheduler.api.enums.Status.TASK_STOP_ERROR;
import org.apache.dolphinscheduler.api.audit.OperatorLog;
import org.apache.dolphinscheduler.api.audit.enums.AuditType;
-import
org.apache.dolphinscheduler.api.dto.taskInstance.TaskInstanceRemoveCacheResponse;
import org.apache.dolphinscheduler.api.exceptions.ApiException;
import org.apache.dolphinscheduler.api.service.TaskInstanceService;
import org.apache.dolphinscheduler.api.utils.Result;
@@ -37,7 +35,6 @@ import
org.apache.dolphinscheduler.plugin.task.api.utils.ParameterUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
-import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@@ -202,24 +199,4 @@ public class TaskInstanceController extends BaseController
{
return taskInstanceService.stopTask(loginUser, projectCode, id);
}
- /**
- * remove task instance cache
- *
- * @param loginUser login user
- * @param projectCode project code
- * @param id task instance id
- * @return the result code and msg
- */
- @Operation(summary = "remove-task-instance-cache", description =
"REMOVE_TASK_INSTANCE_CACHE")
- @Parameters({
- @Parameter(name = "id", description = "TASK_INSTANCE_ID", required
= true, schema = @Schema(implementation = int.class, example = "12"))
- })
- @DeleteMapping(value = "/{id}/remove-cache")
- @ResponseStatus(HttpStatus.OK)
- @ApiException(REMOVE_TASK_INSTANCE_CACHE_ERROR)
- public TaskInstanceRemoveCacheResponse
removeTaskInstanceCache(@Parameter(hidden = true) @RequestAttribute(value =
Constants.SESSION_USER) User loginUser,
-
@Parameter(name = "projectCode", description = "PROJECT_CODE", required = true)
@PathVariable long projectCode,
-
@PathVariable(value = "id") Integer id) {
- return taskInstanceService.removeTaskInstanceCache(loginUser,
projectCode, id);
- }
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/taskInstance/TaskInstanceRemoveCacheResponse.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/taskInstance/TaskInstanceRemoveCacheResponse.java
deleted file mode 100644
index 34a8218304..0000000000
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/taskInstance/TaskInstanceRemoveCacheResponse.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.dolphinscheduler.api.dto.taskInstance;
-
-import org.apache.dolphinscheduler.api.utils.Result;
-
-import lombok.Data;
-
-/**
- * task instance success response
- */
-@Data
-public class TaskInstanceRemoveCacheResponse extends Result {
-
- private String cacheKey;
-
- public TaskInstanceRemoveCacheResponse(Result result) {
- super();
- this.setCode(result.getCode());
- this.setMsg(result.getMsg());
- }
-
- public TaskInstanceRemoveCacheResponse(Result result, String cacheKey) {
- super();
- this.setCode(result.getCode());
- this.setMsg(result.getMsg());
- this.cacheKey = cacheKey;
- }
-}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/enums/Status.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/enums/Status.java
index c9f0912723..8e129f9436 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/enums/Status.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/enums/Status.java
@@ -314,8 +314,6 @@ public enum Status {
"资源文件已授权其他用户[{0}],后缀不允许修改"),
RESOURCE_HAS_FOLDER(20018, "There are files or folders in the current
directory:{0}", "当前目录下有文件或文件夹[{0}]"),
- REMOVE_TASK_INSTANCE_CACHE_ERROR(20019, "remove task instance cache
error", "删除任务实例缓存错误"),
-
ILLEGAL_RESOURCE_PATH(20020, "Resource file [{0}] is illegal",
"非法的资源路径[{0}]"),
USER_NO_OPERATION_PERM(30001, "user has no operation privilege",
"当前用户没有操作权限"),
@@ -520,7 +518,6 @@ public enum Status {
CLOSE_TASK_GROUP_ERROR(130011, "close task group error", "关闭任务组错误"),
START_TASK_GROUP_ERROR(130012, "start task group error", "启动任务组错误"),
QUERY_TASK_GROUP_QUEUE_LIST_ERROR(130013, "query task group queue list
error", "查询任务组队列列表错误"),
- TASK_GROUP_CACHE_START_FAILED(130014, "cache start failed",
"任务组相关的缓存启动失败"),
ENVIRONMENT_WORKER_GROUPS_IS_INVALID(130015, "environment worker groups is
invalid format", "环境关联的工作组参数解析错误"),
UPDATE_ENVIRONMENT_WORKER_GROUP_RELATION_ERROR(130016,
"You can't modify the worker group, because the worker group [{0}]
and this environment [{1}] already be used in the task [{2}]",
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskInstanceService.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskInstanceService.java
index af7c650f34..3690aa118c 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskInstanceService.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskInstanceService.java
@@ -17,7 +17,6 @@
package org.apache.dolphinscheduler.api.service;
-import
org.apache.dolphinscheduler.api.dto.taskInstance.TaskInstanceRemoveCacheResponse;
import org.apache.dolphinscheduler.api.utils.Result;
import org.apache.dolphinscheduler.common.enums.TaskExecuteType;
import org.apache.dolphinscheduler.dao.entity.TaskInstance;
@@ -101,14 +100,5 @@ public interface TaskInstanceService {
*/
TaskInstance queryTaskInstanceById(User loginUser, long projectCode, Long
taskInstanceId);
- /**
- * remove task instance cache
- * @param loginUser
- * @param projectCode
- * @param taskInstanceId
- * @return
- */
- TaskInstanceRemoveCacheResponse removeTaskInstanceCache(User loginUser,
long projectCode, Integer taskInstanceId);
-
void deleteByWorkflowInstanceId(Integer workflowInstanceId);
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskInstanceServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskInstanceServiceImpl.java
index 372ee35b6d..b1518e3cc7 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskInstanceServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskInstanceServiceImpl.java
@@ -18,10 +18,8 @@
package org.apache.dolphinscheduler.api.service.impl;
import static
org.apache.dolphinscheduler.api.constants.ApiFuncIdentificationConstant.FORCED_SUCCESS;
-import static
org.apache.dolphinscheduler.api.constants.ApiFuncIdentificationConstant.INSTANCE_UPDATE;
import static
org.apache.dolphinscheduler.api.constants.ApiFuncIdentificationConstant.TASK_INSTANCE;
-import
org.apache.dolphinscheduler.api.dto.taskInstance.TaskInstanceRemoveCacheResponse;
import org.apache.dolphinscheduler.api.enums.Status;
import org.apache.dolphinscheduler.api.exceptions.ServiceException;
import org.apache.dolphinscheduler.api.service.ProjectService;
@@ -43,7 +41,6 @@ import
org.apache.dolphinscheduler.dao.mapper.TaskDefinitionMapper;
import org.apache.dolphinscheduler.dao.mapper.TaskInstanceMapper;
import org.apache.dolphinscheduler.dao.repository.TaskInstanceDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowInstanceDao;
-import org.apache.dolphinscheduler.dao.utils.TaskCacheUtils;
import org.apache.dolphinscheduler.extract.base.client.Clients;
import org.apache.dolphinscheduler.extract.common.ILogService;
import
org.apache.dolphinscheduler.extract.worker.IPhysicalTaskExecutorOperator;
@@ -56,7 +53,6 @@ import
org.apache.dolphinscheduler.task.executor.operations.TaskExecutorKillRequ
import
org.apache.dolphinscheduler.task.executor.operations.TaskExecutorKillResponse;
import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.tuple.Pair;
import java.util.Date;
import java.util.HashSet;
@@ -325,31 +321,6 @@ public class TaskInstanceServiceImpl extends
BaseServiceImpl implements TaskInst
return taskInstance;
}
- @Override
- public TaskInstanceRemoveCacheResponse removeTaskInstanceCache(User
loginUser, long projectCode,
- Integer
taskInstanceId) {
- Result result = new Result();
-
- Project project = projectMapper.queryByCode(projectCode);
- projectService.checkProjectAndAuthThrowException(loginUser, project,
INSTANCE_UPDATE);
-
- TaskInstance taskInstance =
taskInstanceMapper.selectById(taskInstanceId);
- if (taskInstance == null) {
- log.error("Task definition can not be found, projectCode:{},
taskInstanceId:{}.", projectCode,
- taskInstanceId);
- putMsg(result, Status.TASK_INSTANCE_NOT_FOUND);
- return new TaskInstanceRemoveCacheResponse(result);
- }
- String tagCacheKey = taskInstance.getCacheKey();
- Pair<Integer, String> taskIdAndCacheKey =
TaskCacheUtils.revertCacheKey(tagCacheKey);
- String cacheKey = taskIdAndCacheKey.getRight();
- if (StringUtils.isNotEmpty(cacheKey)) {
- taskInstanceDao.clearCacheByCacheKey(cacheKey);
- }
- putMsg(result, Status.SUCCESS);
- return new TaskInstanceRemoveCacheResponse(result, cacheKey);
- }
-
@Override
public void deleteByWorkflowInstanceId(Integer workflowInstanceId) {
List<TaskInstance> needToDeleteTaskInstances =
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TaskInstanceServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TaskInstanceServiceTest.java
index 224111ba80..5a8dabaaae 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TaskInstanceServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TaskInstanceServiceTest.java
@@ -26,7 +26,6 @@ import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.when;
-import
org.apache.dolphinscheduler.api.dto.taskInstance.TaskInstanceRemoveCacheResponse;
import org.apache.dolphinscheduler.api.enums.Status;
import org.apache.dolphinscheduler.api.exceptions.ServiceException;
import org.apache.dolphinscheduler.api.service.impl.ProjectServiceImpl;
@@ -410,29 +409,4 @@ public class TaskInstanceServiceTest {
() -> taskInstanceService.forceTaskSuccess(user,
task.getProjectCode(), task.getId()));
}
- @Test
- public void testRemoveTaskInstanceCache() {
- User user = getAdminUser();
- long projectCode = 1L;
- Project project = getProject(projectCode);
- int taskId = 1;
- TaskInstance task = getTaskInstance();
- String cacheKey = "950311f3597f9198976cd3fd69e208e5b9ba6750";
- task.setCacheKey(cacheKey);
-
- when(projectMapper.queryByCode(projectCode)).thenReturn(project);
- when(taskInstanceMapper.selectById(1)).thenReturn(task);
- when(taskInstanceDao.queryByCacheKey(cacheKey)).thenReturn(task, null);
- when(taskInstanceDao.updateById(task)).thenReturn(true);
-
- TaskInstanceRemoveCacheResponse response =
- taskInstanceService.removeTaskInstanceCache(user, projectCode,
taskId);
- Assertions.assertEquals(Status.SUCCESS.getCode(), response.getCode());
-
- when(taskInstanceMapper.selectById(1)).thenReturn(null);
- TaskInstanceRemoveCacheResponse responseNotFoundTask =
- taskInstanceService.removeTaskInstanceCache(user, projectCode,
taskId);
- Assertions.assertEquals(Status.TASK_INSTANCE_NOT_FOUND.getCode(),
responseNotFoundTask.getCode());
-
- }
}
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/Flag.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/Flag.java
index 68fdb2a96f..6466b21687 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/Flag.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/Flag.java
@@ -26,7 +26,6 @@ import com.baomidou.mybatisplus.annotation.EnumValue;
* have_arr_variables
* have_map_variables
* have_alert
- * is_cache
*/
public enum Flag {
diff --git a/dolphinscheduler-common/src/test/resources/sql/mysql_ddl.sql
b/dolphinscheduler-common/src/test/resources/sql/mysql_ddl.sql
index c4be0bed7f..feb9908042 100644
--- a/dolphinscheduler-common/src/test/resources/sql/mysql_ddl.sql
+++ b/dolphinscheduler-common/src/test/resources/sql/mysql_ddl.sql
@@ -36,9 +36,6 @@ ALTER TABLE `t_ds_plugin_define` AUTO_INCREMENT 2;
ALTER TABLE `t_ds_workflow_instance` MODIFY COLUMN `state_history` text NULL
COMMENT 'state history desc';
ALTER TABLE `t_ds_project` MODIFY COLUMN `description` varchar(255) NULL;
ALTER TABLE `t_ds_task_group` MODIFY COLUMN `description` varchar(255) NULL;
-ALTER TABLE `t_ds_task_instance` MODIFY COLUMN `app_link` text NULL COMMENT
'yarn app id', MODIFY COLUMN `cache_key` varchar(200) NULL COMMENT 'cache_key',
MODIFY COLUMN `executor_name` varchar(64) NULL;
ALTER TABLE `t_ds_worker_group` MODIFY COLUMN `description` text NULL COMMENT
'description';
-ALTER TABLE `t_ds_task_instance` MODIFY COLUMN `cache_key` varchar(200) NULL
COMMENT 'cache_key', MODIFY COLUMN `executor_name` varchar(64) NULL;
ALTER TABLE `t_ds_fav_task` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT
COMMENT 'id';
-ALTER TABLE `t_ds_task_instance` MODIFY COLUMN `cache_key` varchar(200) NULL
COMMENT 'cache_key', MODIFY COLUMN `executor_name` varchar(64) NULL;
SET FOREIGN_KEY_CHECKS = 1;
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
index 02323d29b0..064082e741 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
@@ -122,11 +122,6 @@ public class TaskDefinition {
*/
private Flag flag;
- /**
- * task is cache: yes/no
- */
- private Flag isCache;
-
/**
* task priority
*/
@@ -291,7 +286,6 @@ public class TaskDefinition {
&& Objects.equals(taskType, that.taskType)
&& Objects.equals(taskParams, that.taskParams)
&& flag == that.flag
- && isCache == that.isCache
&& taskPriority == that.taskPriority
&& Objects.equals(workerGroup, that.workerGroup)
&& timeoutFlag == that.timeoutFlag
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
index 21c4dc899f..ce47df869a 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
@@ -69,7 +69,6 @@ public class TaskDefinitionLog extends TaskDefinition {
this.setFailRetryInterval(taskDefinition.getFailRetryInterval());
this.setFailRetryTimes(taskDefinition.getFailRetryTimes());
this.setFlag(taskDefinition.getFlag());
- this.setIsCache(taskDefinition.getIsCache());
this.setModifyBy(taskDefinition.getModifyBy());
this.setCpuQuota(taskDefinition.getCpuQuota());
this.setMemoryMax(taskDefinition.getMemoryMax());
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskInstance.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskInstance.java
index ca0ee90c9c..5dc6443f8d 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskInstance.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskInstance.java
@@ -27,7 +27,6 @@ import java.util.Date;
import lombok.Data;
-import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -95,11 +94,6 @@ public class TaskInstance implements Serializable {
private Flag flag;
- private Flag isCache;
-
- @TableField(updateStrategy = FieldStrategy.IGNORED)
- private String cacheKey;
-
@TableField(exist = false)
private String duration;
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.java
index e2979c14e0..ca370e9092 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.java
@@ -46,10 +46,6 @@ public interface TaskInstanceMapper extends
BaseMapper<TaskInstance> {
TaskInstance queryByInstanceIdAndCode(@Param("workflowInstanceId") int
workflowInstanceId,
@Param("taskCode") Long taskCode);
- TaskInstance queryByCacheKey(@Param("cacheKey") String cacheKey);
-
- Boolean clearCacheByCacheKey(@Param("cacheKey") String cacheKey);
-
List<TaskInstance>
queryByWorkflowInstanceIdsAndTaskCodes(@Param("workflowInstanceIds")
List<Integer> workflowInstanceIds,
@Param("taskCodes") List<Long> taskCodes);
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TaskInstanceDao.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TaskInstanceDao.java
index be5d6a1fe5..0518759d78 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TaskInstanceDao.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TaskInstanceDao.java
@@ -79,22 +79,6 @@ public interface TaskInstanceDao extends IDao<TaskInstance> {
*/
List<TaskInstance> queryPreviousTaskListByWorkflowInstanceId(Integer
workflowInstanceId);
- /**
- * find task instance by cache_key
- *
- * @param cacheKey cache key
- * @return task instance
- */
- TaskInstance queryByCacheKey(String cacheKey);
-
- /**
- * clear task instance cache by cache_key
- *
- * @param cacheKey cache key
- * @return task instance
- */
- Boolean clearCacheByCacheKey(String cacheKey);
-
void deleteByWorkflowInstanceId(int workflowInstanceId);
List<TaskInstance> queryByWorkflowInstanceId(Integer workflowInstanceId);
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/TaskInstanceDaoImpl.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/TaskInstanceDaoImpl.java
index 8c0f9f9cca..00eb08eb8f 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/TaskInstanceDaoImpl.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/TaskInstanceDaoImpl.java
@@ -29,7 +29,6 @@ import
org.apache.dolphinscheduler.dao.repository.TaskInstanceDao;
import org.apache.dolphinscheduler.plugin.task.api.enums.TaskExecutionStatus;
import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
import java.util.Date;
import java.util.List;
@@ -155,25 +154,6 @@ public class TaskInstanceDaoImpl extends
BaseDao<TaskInstance, TaskInstanceMappe
workflowInstance.getTestFlag());
}
- @Override
- public TaskInstance queryByCacheKey(String cacheKey) {
- if (StringUtils.isEmpty(cacheKey)) {
- return null;
- }
- return mybatisMapper.queryByCacheKey(cacheKey);
- }
-
- @Override
- public Boolean clearCacheByCacheKey(String cacheKey) {
- try {
- mybatisMapper.clearCacheByCacheKey(cacheKey);
- return true;
- } catch (Exception e) {
- log.error("clear cache by cacheKey failed", e);
- return false;
- }
- }
-
@Override
public void deleteByWorkflowInstanceId(int workflowInstanceId) {
mybatisMapper.deleteByWorkflowInstanceId(workflowInstanceId);
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtils.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtils.java
deleted file mode 100644
index 90b648386b..0000000000
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtils.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.dolphinscheduler.dao.utils;
-
-import static
org.apache.dolphinscheduler.common.constants.Constants.CRC_SUFFIX;
-
-import org.apache.dolphinscheduler.common.utils.FileUtils;
-import org.apache.dolphinscheduler.common.utils.JSONUtils;
-import org.apache.dolphinscheduler.dao.entity.TaskInstance;
-import org.apache.dolphinscheduler.plugin.storage.api.StorageOperator;
-import org.apache.dolphinscheduler.plugin.task.api.TaskExecutionContext;
-import org.apache.dolphinscheduler.plugin.task.api.enums.DataType;
-import org.apache.dolphinscheduler.plugin.task.api.enums.Direct;
-import org.apache.dolphinscheduler.plugin.task.api.model.Property;
-
-import org.apache.commons.codec.digest.DigestUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.tuple.Pair;
-
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-
-import lombok.extern.slf4j.Slf4j;
-
-import com.fasterxml.jackson.databind.JsonNode;
-
-@Slf4j
-public class TaskCacheUtils {
-
- private TaskCacheUtils() {
- throw new IllegalStateException("Utility class");
- }
-
- public static final String MERGE_TAG = "-";
-
- /**
- * generate cache key for task instance
- * the follow message will be used to generate cache key
- * 2. task version
- * 3. task is cache
- * 4. input VarPool, from upstream task and workflow global parameters
- * @param taskInstance task instance
- * @param taskExecutionContext taskExecutionContext
- * @param storageOperator storageOperate
- * @return cache key
- */
- public static String generateCacheKey(TaskInstance taskInstance,
TaskExecutionContext taskExecutionContext,
- StorageOperator storageOperator) {
- List<String> keyElements = new ArrayList<>();
- keyElements.add(String.valueOf(taskInstance.getTaskCode()));
-
keyElements.add(String.valueOf(taskInstance.getTaskDefinitionVersion()));
- keyElements.add(String.valueOf(taskInstance.getIsCache().getCode()));
- keyElements.add(String.valueOf(taskInstance.getEnvironmentConfig()));
- keyElements.add(getTaskInputVarPoolData(taskInstance,
taskExecutionContext, storageOperator));
- String data = StringUtils.join(keyElements, "_");
- return DigestUtils.sha256Hex(data);
- }
-
- /**
- * generate cache key for task instance which is cache execute
- * this key will record which cache task instance will be copied, and
cache key will be used
- * tagCacheKey = sourceTaskId + "-" + cacheKey
- * @param sourceTaskId source task id
- * @param cacheKey cache key
- * @return tagCacheKey
- */
- public static String generateTagCacheKey(Integer sourceTaskId, String
cacheKey) {
- return sourceTaskId + MERGE_TAG + cacheKey;
- }
-
- /**
- * revert cache key tag to source task id and cache key
- * @param tagCacheKey cache key
- * @return Pair<Integer, String>, first is source task id, second is cache
key
- */
- public static Pair<Integer, String> revertCacheKey(String tagCacheKey) {
- Pair<Integer, String> taskIdAndCacheKey;
- if (tagCacheKey == null) {
- taskIdAndCacheKey = Pair.of(-1, "");
- return taskIdAndCacheKey;
- }
- if (tagCacheKey.contains(MERGE_TAG)) {
- String[] split = tagCacheKey.split(MERGE_TAG);
- if (split.length == 2) {
- taskIdAndCacheKey = Pair.of(Integer.parseInt(split[0]),
split[1]);
- } else {
- taskIdAndCacheKey = Pair.of(-1, "");
- }
- return taskIdAndCacheKey;
- } else {
- return Pair.of(-1, tagCacheKey);
- }
- }
-
- /**
- * get hash data of task input var pool
- * there are two parts of task input var pool: from upstream task and
workflow global parameters
- * @param taskInstance task instance
- * taskExecutionContext taskExecutionContext
- */
- public static String getTaskInputVarPoolData(TaskInstance taskInstance,
TaskExecutionContext context,
- StorageOperator
storageOperator) {
- JsonNode taskParams =
JSONUtils.parseObject(taskInstance.getTaskParams());
-
- // The set of input values considered from localParams in the
taskParams
- Set<String> propertyInSet =
JSONUtils.toList(taskParams.get("localParams").toString(),
Property.class).stream()
- .filter(property -> property.getDirect().equals(Direct.IN))
- .map(Property::getProp).collect(Collectors.toSet());
-
- // The set of input values considered from `${var}` form task
definition
- propertyInSet.addAll(getScriptVarInSet(taskInstance));
-
- // var pool value from upstream task
- List<Property> varPool = JSONUtils.toList(taskInstance.getVarPool(),
Property.class);
-
- Map<String, String> fileCheckSumMap = new HashMap<>();
- List<Property> fileInput = varPool.stream().filter(property ->
property.getType().equals(DataType.FILE))
- .collect(Collectors.toList());
- fileInput.forEach(
- property -> fileCheckSumMap.put(property.getProp(),
- getValCheckSum(property, context, storageOperator)));
-
- // var pool value from workflow global parameters
- if (context.getPrepareParamsMap() != null) {
- Set<String> taskVarPoolSet =
varPool.stream().map(Property::getProp).collect(Collectors.toSet());
- List<Property> globalContextVarPool =
context.getPrepareParamsMap().entrySet().stream()
- .filter(entry -> !taskVarPoolSet.contains(entry.getKey()))
- .map(Map.Entry::getValue)
- .collect(Collectors.toList());
- varPool.addAll(globalContextVarPool);
- }
-
- // only consider var pool value which is in propertyInSet
- varPool = varPool.stream()
- .filter(property -> property.getDirect().equals(Direct.IN))
- .filter(property -> propertyInSet.contains(property.getProp()))
- .sorted(Comparator.comparing(Property::getProp))
- .collect(Collectors.toList());
-
- varPool.forEach(property -> {
- if (property.getType() == DataType.FILE) {
- property.setValue(fileCheckSumMap.get(property.getValue()));
- }
- });
- return JSONUtils.toJsonString(varPool);
- }
-
- /**
- * get checksum from crc32 file of file property in varPool
- * cache can be used if content of upstream output files are the same
- * @param fileProperty
- * @param context
- * @param storageOperator
- */
- public static String getValCheckSum(Property fileProperty,
TaskExecutionContext context,
- StorageOperator storageOperator) {
- String resourceCRCPath = fileProperty.getValue() + CRC_SUFFIX;
- String resourceCRCWholePath =
-
storageOperator.getStorageFileAbsolutePath(context.getTenantCode(),
resourceCRCPath);
- String targetPath = String.format("%s/%s", context.getExecutePath(),
resourceCRCPath);
- log.info("{} --- Remote:{} to Local:{}", "CRC file",
resourceCRCWholePath, targetPath);
- String crcString = "";
- try {
- storageOperator.download(resourceCRCWholePath, targetPath, true);
- crcString = FileUtils.readFile2Str(new
FileInputStream(targetPath));
- fileProperty.setValue(crcString);
- } catch (IOException e) {
- log.error("Replace checksum failed for file property {}.",
fileProperty.getProp());
- }
- return crcString;
- }
-
- /**
- * get var in set from task definition
- * @param taskInstance task instance
- * @return var in set
- */
- public static List<String> getScriptVarInSet(TaskInstance taskInstance) {
- Pattern pattern = Pattern.compile("\\$\\{(.+?)\\}");
- Matcher matcher = pattern.matcher(taskInstance.getTaskParams());
-
- List<String> varInSet = new ArrayList<>();
- while (matcher.find()) {
- varInSet.add(matcher.group(1));
- }
- return varInSet;
- }
-
-}
diff --git
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionLogMapper.xml
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionLogMapper.xml
index 14c71f83c5..2dfa96a929 100644
---
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionLogMapper.xml
+++
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionLogMapper.xml
@@ -19,7 +19,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.dolphinscheduler.dao.mapper.TaskDefinitionLogMapper">
<sql id="baseSql">
- id, code, name, version, description, project_code, user_id,
task_type, task_params, flag, is_cache, task_priority,
+ id, code, name, version, description, project_code, user_id,
task_type, task_params, flag, task_priority,
worker_group, environment_code, fail_retry_times, fail_retry_interval,
timeout_flag, timeout_notify_strategy, timeout, delay_time,
resource_ids, operator, operate_time, create_time, update_time,
task_group_id, task_group_priority, cpu_quota, memory_max, task_execute_type
</sql>
@@ -50,14 +50,14 @@
</select>
<insert id="batchInsert">
insert into t_ds_task_definition_log (code, name, version,
description, project_code, user_id,
- task_type, task_params, flag, is_cache, task_priority, worker_group,
environment_code, fail_retry_times, fail_retry_interval,
+ task_type, task_params, flag, task_priority, worker_group,
environment_code, fail_retry_times, fail_retry_interval,
timeout_flag, timeout_notify_strategy, timeout, delay_time,
resource_ids, operator, operate_time, create_time,
update_time, task_group_id, task_group_priority, cpu_quota,
memory_max, task_execute_type)
values
<foreach collection="taskDefinitionLogs" item="taskDefinitionLog"
separator=",">
(#{taskDefinitionLog.code},#{taskDefinitionLog.name},#{taskDefinitionLog.version},#{taskDefinitionLog.description},
#{taskDefinitionLog.projectCode},#{taskDefinitionLog.userId},#{taskDefinitionLog.taskType},#{taskDefinitionLog.taskParams},
-
#{taskDefinitionLog.flag},#{taskDefinitionLog.isCache},#{taskDefinitionLog.taskPriority},#{taskDefinitionLog.workerGroup},#{taskDefinitionLog.environmentCode},
+
#{taskDefinitionLog.flag},#{taskDefinitionLog.taskPriority},#{taskDefinitionLog.workerGroup},#{taskDefinitionLog.environmentCode},
#{taskDefinitionLog.failRetryTimes},#{taskDefinitionLog.failRetryInterval},#{taskDefinitionLog.timeoutFlag},#{taskDefinitionLog.timeoutNotifyStrategy},
#{taskDefinitionLog.timeout},#{taskDefinitionLog.delayTime},#{taskDefinitionLog.resourceIds},#{taskDefinitionLog.operator},#{taskDefinitionLog.operateTime},
#{taskDefinitionLog.createTime},#{taskDefinitionLog.updateTime},
diff --git
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionMapper.xml
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionMapper.xml
index fe154bd6c2..5dab4f5fb8 100644
---
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionMapper.xml
+++
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskDefinitionMapper.xml
@@ -19,13 +19,13 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.dolphinscheduler.dao.mapper.TaskDefinitionMapper">
<sql id="baseSql">
- id, code, name, version, description, project_code, user_id,
task_type, task_params, flag, is_cache, task_priority,
+ id, code, name, version, description, project_code, user_id,
task_type, task_params, flag, task_priority,
worker_group, environment_code, fail_retry_times, fail_retry_interval,
timeout_flag, timeout_notify_strategy, timeout, delay_time,
resource_ids, create_time, update_time,
task_group_id,task_group_priority, cpu_quota, memory_max, task_execute_type
</sql>
<sql id="baseSqlV2">
${alias}.id, ${alias}.code, ${alias}.name, ${alias}.version,
${alias}.description, ${alias}.project_code, ${alias}.user_id,
- ${alias}.task_type, ${alias}.task_params, ${alias}.flag,
${alias}.is_cache, ${alias}.task_priority, ${alias}.worker_group,
${alias}.environment_code,
+ ${alias}.task_type, ${alias}.task_params, ${alias}.flag,
${alias}.task_priority, ${alias}.worker_group, ${alias}.environment_code,
${alias}.fail_retry_times, ${alias}.fail_retry_interval,
${alias}.timeout_flag, ${alias}.timeout_notify_strategy, ${alias}.timeout,
${alias}.delay_time, ${alias}.resource_ids, ${alias}.create_time,
${alias}.update_time, ${alias}.task_group_id,
${alias}.task_group_priority, ${alias}.cpu_quota, ${alias}.memory_max,
${alias}.task_execute_type
@@ -86,12 +86,12 @@
<insert id="batchInsert">
insert into t_ds_task_definition (code, name, version, description,
project_code, user_id,
- task_type, task_params, flag, is_cache, task_priority, worker_group,
environment_code, fail_retry_times, fail_retry_interval,
+ task_type, task_params, flag, task_priority, worker_group,
environment_code, fail_retry_times, fail_retry_interval,
timeout_flag, timeout_notify_strategy, timeout, delay_time,
resource_ids, create_time, update_time,task_group_id, task_execute_type)
values
<foreach collection="taskDefinitions" item="taskDefinition"
separator=",">
(#{taskDefinition.code},#{taskDefinition.name},#{taskDefinition.version},#{taskDefinition.description},
-
#{taskDefinition.projectCode},#{taskDefinition.userId},#{taskDefinition.taskType},#{taskDefinition.taskParams},#{taskDefinition.flag},#{taskDefinition.isCache},
+
#{taskDefinition.projectCode},#{taskDefinition.userId},#{taskDefinition.taskType},#{taskDefinition.taskParams},#{taskDefinition.flag},
#{taskDefinition.taskPriority},#{taskDefinition.workerGroup},#{taskDefinition.environmentCode},#{taskDefinition.failRetryTimes},
#{taskDefinition.failRetryInterval},#{taskDefinition.timeoutFlag},#{taskDefinition.timeoutNotifyStrategy},#{taskDefinition.timeout},
#{taskDefinition.delayTime},#{taskDefinition.resourceIds},#{taskDefinition.createTime},#{taskDefinition.updateTime},
diff --git
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.xml
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.xml
index 04b6bec241..5f7ba908b9 100644
---
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.xml
+++
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskInstanceMapper.xml
@@ -21,13 +21,13 @@
<sql id="baseSql">
id, name, task_type, workflow_instance_id, workflow_instance_name,
project_code, task_code, task_definition_version, state, submit_time,
start_time, end_time, host, execute_path, log_path, alert_flag,
retry_times, pid, app_link,
- flag, is_cache, cache_key, retry_interval, max_retry_times,
task_instance_priority, worker_group,environment_code , executor_id,
executor_name,
+ flag, retry_interval, max_retry_times, task_instance_priority,
worker_group,environment_code , executor_id, executor_name,
first_submit_time, delay_time, task_params, var_pool, dry_run,
test_flag, task_group_id, cpu_quota, memory_max, task_execute_type
</sql>
<sql id="baseSqlV2">
${alias}.id, ${alias}.name, ${alias}.task_type, ${alias}.task_code,
${alias}.task_definition_version, ${alias}.workflow_instance_id,
${alias}.state, ${alias}.submit_time,
${alias}.start_time, ${alias}.end_time, ${alias}.host,
${alias}.execute_path, ${alias}.log_path, ${alias}.alert_flag,
${alias}.retry_times, ${alias}.pid, ${alias}.app_link,
- ${alias}.flag, ${alias}.is_cache, ${alias}.cache_key,
${alias}.retry_interval, ${alias}.max_retry_times,
${alias}.task_instance_priority,
${alias}.worker_group,${alias}.environment_code , ${alias}.executor_id,
+ ${alias}.flag, ${alias}.retry_interval, ${alias}.max_retry_times,
${alias}.task_instance_priority,
${alias}.worker_group,${alias}.environment_code , ${alias}.executor_id,
${alias}.first_submit_time, ${alias}.delay_time, ${alias}.task_params,
${alias}.var_pool, ${alias}.dry_run, ${alias}.test_flag,
${alias}.task_group_id, ${alias}.task_execute_type
</sql>
<select id="findValidTaskListByWorkflowInstanceId"
resultType="org.apache.dolphinscheduler.dao.entity.TaskInstance">
@@ -133,18 +133,6 @@
and flag = 1
limit 1
</select>
- <select id="queryByCacheKey"
resultType="org.apache.dolphinscheduler.dao.entity.TaskInstance">
- select
- <include refid="baseSql"/>
- from t_ds_task_instance
- where cache_key = #{cacheKey}
- limit 1
- </select>
- <update id="clearCacheByCacheKey">
- update t_ds_task_instance
- set cache_key = null
- where cache_key = #{cacheKey}
- </update>
<select id="queryByWorkflowInstanceIdsAndTaskCodes"
resultType="org.apache.dolphinscheduler.dao.entity.TaskInstance">
select
<include refid="baseSql"/>
diff --git
a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
index 9beb2ffd9b..8c4510659a 100644
--- a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
+++ b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
@@ -471,7 +471,6 @@ CREATE TABLE t_ds_task_definition
task_execute_type int(11) DEFAULT '0',
task_params longtext,
flag tinyint(2) DEFAULT NULL,
- is_cache tinyint(2) DEFAULT '0',
task_priority tinyint(4) DEFAULT '2',
worker_group varchar(200) DEFAULT NULL,
environment_code bigint(20) DEFAULT '-1',
@@ -508,7 +507,6 @@ CREATE TABLE t_ds_task_definition_log
task_execute_type int(11) DEFAULT '0',
task_params text,
flag tinyint(2) DEFAULT NULL,
- is_cache tinyint(2) DEFAULT '0',
task_priority tinyint(4) DEFAULT '2',
worker_group varchar(200) DEFAULT NULL,
environment_code bigint(20) DEFAULT '-1',
@@ -904,8 +902,6 @@ CREATE TABLE t_ds_task_instance
app_link text,
task_params longtext,
flag tinyint(4) DEFAULT '1',
- is_cache tinyint(2) DEFAULT '0',
- cache_key varchar(200) DEFAULT NULL,
retry_interval int(4) DEFAULT NULL,
max_retry_times int(2) DEFAULT NULL,
task_instance_priority int(11) DEFAULT NULL,
diff --git
a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
index eee04391e6..d3774fee19 100644
--- a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
+++ b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
@@ -475,7 +475,6 @@ CREATE TABLE `t_ds_task_definition` (
`task_execute_type` int(11) DEFAULT '0' COMMENT 'task execute type: 0-batch,
1-stream',
`task_params` longtext COMMENT 'job custom parameters',
`flag` tinyint(2) DEFAULT NULL COMMENT '0 not available, 1 available',
- `is_cache` tinyint(2) DEFAULT '0' COMMENT '0 not available, 1 available',
`task_priority` tinyint(4) DEFAULT '2' COMMENT 'job priority',
`worker_group` varchar(255) DEFAULT NULL COMMENT 'worker grouping',
`environment_code` bigint(20) DEFAULT '-1' COMMENT 'environment code',
@@ -512,7 +511,6 @@ CREATE TABLE `t_ds_task_definition_log` (
`task_execute_type` int(11) DEFAULT '0' COMMENT 'task execute type: 0-batch,
1-stream',
`task_params` longtext COMMENT 'job custom parameters',
`flag` tinyint(2) DEFAULT NULL COMMENT '0 not available, 1 available',
- `is_cache` tinyint(2) DEFAULT '0' COMMENT '0 not available, 1 available',
`task_priority` tinyint(4) DEFAULT '2' COMMENT 'job priority',
`worker_group` varchar(255) DEFAULT NULL COMMENT 'worker grouping',
`environment_code` bigint(20) DEFAULT '-1' COMMENT 'environment code',
@@ -902,8 +900,6 @@ CREATE TABLE `t_ds_task_instance` (
`app_link` text COMMENT 'yarn app id',
`task_params` longtext COMMENT 'job custom parameters',
`flag` tinyint(4) DEFAULT '1' COMMENT '0 not available, 1 available',
- `is_cache` tinyint(2) DEFAULT '0' COMMENT '0 not available, 1 available',
- `cache_key` varchar(200) DEFAULT NULL COMMENT 'cache_key',
`retry_interval` int(4) DEFAULT NULL COMMENT 'retry interval when task
failed ',
`max_retry_times` int(2) DEFAULT NULL COMMENT 'max retry times',
`task_instance_priority` int(11) DEFAULT NULL COMMENT 'task instance
priority:0 Highest,1 High,2 Medium,3 Low,4 Lowest',
@@ -922,8 +918,7 @@ CREATE TABLE `t_ds_task_instance` (
`test_flag` tinyint(4) DEFAULT null COMMENT 'test flag:0 normal, 1 test
run',
PRIMARY KEY (`id`),
KEY `workflow_instance_id` (`workflow_instance_id`) USING BTREE,
- KEY `idx_code_version` (`task_code`, `task_definition_version`) USING BTREE,
- KEY `idx_cache_key` (`cache_key`) USING BTREE
+ KEY `idx_code_version` (`task_code`, `task_definition_version`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE = utf8_bin;
-- ----------------------------
diff --git
a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
index 9ff1ab5b6d..c84db98fa2 100644
---
a/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
+++
b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
@@ -399,7 +399,6 @@ CREATE TABLE t_ds_task_definition (
task_execute_type int DEFAULT '0',
task_params text ,
flag int DEFAULT NULL ,
- is_cache int DEFAULT '0',
task_priority int DEFAULT '2' ,
worker_group varchar(255) DEFAULT NULL ,
environment_code bigint DEFAULT '-1',
@@ -438,7 +437,6 @@ CREATE TABLE t_ds_task_definition_log (
task_execute_type int DEFAULT '0',
task_params text ,
flag int DEFAULT NULL ,
- is_cache int DEFAULT '0' ,
task_priority int DEFAULT '2' ,
worker_group varchar(255) DEFAULT NULL ,
environment_code bigint DEFAULT '-1',
@@ -816,8 +814,6 @@ CREATE TABLE t_ds_task_instance (
app_link text ,
task_params text ,
flag int DEFAULT '1' ,
- is_cache int DEFAULT '0',
- cache_key varchar(200) DEFAULT NULL,
retry_interval int DEFAULT NULL ,
max_retry_times int DEFAULT NULL ,
task_instance_priority int DEFAULT NULL ,
@@ -838,7 +834,6 @@ CREATE TABLE t_ds_task_instance (
) ;
create index idx_task_instance_code_version on t_ds_task_instance (task_code,
task_definition_version);
-create index idx_cache_key on t_ds_task_instance (cache_key);
--
-- Table structure for table t_ds_tenant
diff --git
a/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/mysql/dolphinscheduler_ddl.sql
b/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/mysql/dolphinscheduler_ddl.sql
index a57326e680..79b6fe34d7 100644
---
a/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/mysql/dolphinscheduler_ddl.sql
+++
b/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/mysql/dolphinscheduler_ddl.sql
@@ -246,3 +246,118 @@ CALL drop_column_t_ds_worker_group_other_params_json;
DROP PROCEDURE drop_column_t_ds_worker_group_other_params_json;
ALTER TABLE `t_ds_task_definition` ADD INDEX `idx_project_code` USING BTREE
(`project_code`);
+
+
+-- drop_column_t_ds_task_definition is_cache
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_definition_is_cache;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_definition_is_cache()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_definition'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='is_cache')
+ THEN
+ALTER TABLE `t_ds_task_definition`
+DROP COLUMN `is_cache`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_definition_is_cache;
+DROP PROCEDURE drop_column_t_ds_task_definition_is_cache;
+
+-- drop_column_t_ds_task_definition cache_key
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_definition_cache_key;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_definition_cache_key()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_definition'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='cache_key')
+ THEN
+ALTER TABLE `t_ds_task_definition`
+DROP COLUMN `cache_key`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_definition_cache_key;
+DROP PROCEDURE drop_column_t_ds_task_definition_cache_key;
+
+-- drop_column_t_ds_task_definition_log is_cache
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_definition_log_is_cache;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_definition_log_is_cache()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_definition_log'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='is_cache')
+ THEN
+ALTER TABLE `t_ds_task_definition_log`
+DROP COLUMN `is_cache`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_definition_log_is_cache;
+DROP PROCEDURE drop_column_t_ds_task_definition_log_is_cache;
+
+-- drop_column_t_ds_task_definition_log cache_key
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_definition_log_cache_key;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_definition_log_cache_key()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_definition_log'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='cache_key')
+ THEN
+ALTER TABLE `t_ds_task_definition_log`
+DROP COLUMN `cache_key`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_definition_log_cache_key;
+DROP PROCEDURE drop_column_t_ds_task_definition_log_cache_key;
+
+-- drop_column_t_ds_task_instance is_cache
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_instance_is_cache;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_instance_is_cache()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_instance'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='is_cache')
+ THEN
+ALTER TABLE `t_ds_task_instance`
+DROP COLUMN `is_cache`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_instance_is_cache;
+DROP PROCEDURE drop_column_t_ds_task_instance_is_cache;
+
+-- drop_column_t_ds_task_instance cache_key
+DROP PROCEDURE if EXISTS drop_column_t_ds_task_instance_cache_key;
+delimiter d//
+CREATE PROCEDURE drop_column_t_ds_task_instance_cache_key()
+BEGIN
+ IF EXISTS (SELECT 1 FROM information_schema.COLUMNS
+ WHERE TABLE_NAME='t_ds_task_instance'
+ AND TABLE_SCHEMA=(SELECT DATABASE())
+ AND COLUMN_NAME ='cache_key')
+ THEN
+ALTER TABLE `t_ds_task_instance`
+DROP COLUMN `cache_key`;
+END IF;
+END;
+d//
+delimiter ;
+CALL drop_column_t_ds_task_instance_cache_key;
+DROP PROCEDURE drop_column_t_ds_task_instance_cache_key;
diff --git
a/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/postgresql/dolphinscheduler_ddl.sql
b/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/postgresql/dolphinscheduler_ddl.sql
index 14e07d5298..f300861113 100644
---
a/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/postgresql/dolphinscheduler_ddl.sql
+++
b/dolphinscheduler-dao/src/main/resources/sql/upgrade/3.3.0_schema/postgresql/dolphinscheduler_ddl.sql
@@ -248,3 +248,117 @@ d//
select drop_column_t_ds_worker_group_other_params_json();
DROP FUNCTION IF EXISTS drop_column_t_ds_worker_group_other_params_json();
+-- drop_column_t_ds_task_definition is_cache
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_definition_is_cache() RETURNS
void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_definition'
+ AND column_name = 'is_cache')
+ THEN
+ALTER TABLE t_ds_task_definition
+DROP COLUMN "is_cache";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_definition_is_cache();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_definition_is_cache();
+
+-- drop_column_t_ds_task_definition cache_key
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_definition_cache_key()
RETURNS void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_definition'
+ AND column_name = 'cache_key')
+ THEN
+ALTER TABLE t_ds_task_definition
+DROP COLUMN "cache_key";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_definition_cache_key();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_definition_cache_key();
+
+-- drop_column_t_ds_task_definition_log is_cache
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_definition_log_is_cache()
RETURNS void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_definition_log'
+ AND column_name = 'is_cache')
+ THEN
+ALTER TABLE t_ds_task_definition_log
+DROP COLUMN "is_cache";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_definition_log_is_cache();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_definition_log_is_cache();
+
+-- drop_column_t_ds_task_definition_log cache_key
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_definition_log_cache_key()
RETURNS void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_definition_log'
+ AND column_name = 'cache_key')
+ THEN
+ALTER TABLE t_ds_task_definition_log
+DROP COLUMN "cache_key";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_definition_log_cache_key();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_definition_log_cache_key();
+
+-- drop_column_t_ds_task_instance is_cache
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_instance_is_cache() RETURNS
void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_instance'
+ AND column_name = 'is_cache')
+ THEN
+ALTER TABLE t_ds_task_instance
+DROP COLUMN "is_cache";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_instance_is_cache();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_instance_is_cache();
+
+-- drop_column_t_ds_task_instance cache_key
+delimiter d//
+CREATE OR REPLACE FUNCTION drop_column_t_ds_task_instance_cache_key() RETURNS
void AS $$
+BEGIN
+ IF EXISTS (SELECT 1
+ FROM information_schema.columns
+ WHERE table_name = 't_ds_task_instance'
+ AND column_name = 'cache_key')
+ THEN
+ALTER TABLE t_ds_task_instance
+DROP COLUMN "cache_key";
+END IF;
+END;
+$$ LANGUAGE plpgsql;
+d//
+
+select drop_column_t_ds_task_instance_cache_key();
+DROP FUNCTION IF EXISTS drop_column_t_ds_task_instance_cache_key();
+
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
deleted file mode 100644
index ee88d1cd1a..0000000000
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
+++ /dev/null
@@ -1,204 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.dolphinscheduler.dao.utils;
-
-import org.apache.dolphinscheduler.common.enums.Flag;
-import org.apache.dolphinscheduler.common.utils.FileUtils;
-import org.apache.dolphinscheduler.dao.entity.TaskInstance;
-import org.apache.dolphinscheduler.plugin.storage.api.StorageOperator;
-import org.apache.dolphinscheduler.plugin.task.api.TaskExecutionContext;
-import org.apache.dolphinscheduler.plugin.task.api.enums.DataType;
-import org.apache.dolphinscheduler.plugin.task.api.enums.Direct;
-import org.apache.dolphinscheduler.plugin.task.api.model.Property;
-
-import org.apache.commons.lang3.tuple.Pair;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
-
-class TaskCacheUtilsTest {
-
- private TaskInstance taskInstance;
-
- private TaskExecutionContext taskExecutionContext;
-
- private StorageOperator storageOperator;
-
- @BeforeEach
- void setUp() {
- String taskParams = "{\n" +
- " \"localParams\": [\n" +
- " {\n" +
- " \"prop\": \"a\",\n" +
- " \"direct\": \"IN\",\n" +
- " \"type\": \"VARCHAR\",\n" +
- " \"value\": \"\"\n" +
- " },\n" +
- " {\n" +
- " \"prop\": \"b\",\n" +
- " \"direct\": \"IN\",\n" +
- " \"type\": \"VARCHAR\",\n" +
- " \"value\": \"bb\"\n" +
- " }\n" +
- " ],\n" +
- " \"rawScript\": \"echo ${c}\\necho ${d}\",\n" +
- " \"resourceList\": []\n" +
- "}";
-
- String varPool = "[\n" +
- " {\n" +
- " \"prop\": \"c\",\n" +
- " \"direct\": \"IN\",\n" +
- " \"type\": \"VARCHAR\",\n" +
- " \"value\": \"cc\"\n" +
- " },\n" +
- " {\n" +
- " \"prop\": \"k\",\n" +
- " \"direct\": \"IN\",\n" +
- " \"type\": \"VARCHAR\",\n" +
- " \"value\": \"kk\"\n" +
- " }\n" +
- "]";
-
- taskInstance = new TaskInstance();
- taskInstance.setTaskParams(taskParams);
- taskInstance.setVarPool(varPool);
- taskInstance.setTaskCode(123L);
- taskInstance.setTaskDefinitionVersion(1);
- taskInstance.setIsCache(Flag.YES);
-
- taskExecutionContext = new TaskExecutionContext();
- Property property = new Property();
- property.setProp("a");
- property.setDirect(Direct.IN);
- property.setType(DataType.VARCHAR);
- property.setValue("aa");
- Map<String, Property> prepareParamsMap = new HashMap<>();
- prepareParamsMap.put("a", property);
- taskExecutionContext.setPrepareParamsMap(prepareParamsMap);
-
- storageOperator = Mockito.mock(StorageOperator.class);
- }
-
- @Test
- void testRevertCacheKey() {
- Pair<Integer, String> taskIdAndCacheKey1 =
TaskCacheUtils.revertCacheKey(null);
- Assertions.assertEquals(Pair.of(-1, ""), taskIdAndCacheKey1);
-
- Pair<Integer, String> taskIdAndCacheKey2 =
TaskCacheUtils.revertCacheKey("123");
- Assertions.assertEquals(Pair.of(-1, "123"), taskIdAndCacheKey2);
-
- Pair<Integer, String> taskIdAndCacheKey3 =
TaskCacheUtils.revertCacheKey("1-123");
- Assertions.assertEquals(Pair.of(1, "123"), taskIdAndCacheKey3);
-
- Pair<Integer, String> taskIdAndCacheKey4 =
TaskCacheUtils.revertCacheKey("1-123-4");
- Assertions.assertEquals(Pair.of(-1, ""), taskIdAndCacheKey4);
- }
-
- @Test
- void testGetScriptVarInSet() {
- List<String> scriptVarInSet =
TaskCacheUtils.getScriptVarInSet(taskInstance);
- List<String> except = new ArrayList<>(Arrays.asList("c", "d"));
- Assertions.assertEquals(except, scriptVarInSet);
- }
-
- @Test
- void TestGetTaskInputVarPoolData() {
- TaskCacheUtils.getTaskInputVarPoolData(taskInstance,
taskExecutionContext, storageOperator);
- // only a=aa and c=cc will influence the result,
- // b=bb is a fixed value, will be considered in task version
- // k=kk is not in task params, will be ignored
- String except =
-
"[{\"prop\":\"a\",\"direct\":\"IN\",\"type\":\"VARCHAR\",\"value\":\"aa\"},{\"prop\":\"c\",\"direct\":\"IN\",\"type\":\"VARCHAR\",\"value\":\"cc\"}]";
- Assertions.assertEquals(except,
- TaskCacheUtils.getTaskInputVarPoolData(taskInstance,
taskExecutionContext, storageOperator));
- }
-
- @Test
- void TestGenerateCacheKey() {
- String cacheKeyBase = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperator);
- Property propertyI = new Property();
- propertyI.setProp("i");
- propertyI.setDirect(Direct.IN);
- propertyI.setType(DataType.VARCHAR);
- propertyI.setValue("ii");
- taskExecutionContext.getPrepareParamsMap().put("i", propertyI);
- String cacheKeyNew = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperator);
- // i will not influence the result, because task instance not use it
- Assertions.assertEquals(cacheKeyBase, cacheKeyNew);
-
- Property propertyD = new Property();
- propertyD.setProp("d");
- propertyD.setDirect(Direct.IN);
- propertyD.setType(DataType.VARCHAR);
- propertyD.setValue("dd");
- taskExecutionContext.getPrepareParamsMap().put("i", propertyD);
- String cacheKeyD = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperator);
- // d will influence the result, because task instance use it
- Assertions.assertNotEquals(cacheKeyBase, cacheKeyD);
-
- taskInstance.setTaskDefinitionVersion(100);
- String cacheKeyE = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperator);
- // task definition version is changed, so cache key changed
- Assertions.assertNotEquals(cacheKeyD, cacheKeyE);
-
- taskInstance.setEnvironmentConfig("export
PYTHON_LAUNCHER=/bin/python3");
- String cacheKeyF = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperator);
- // EnvironmentConfig is changed, so cache key changed
- Assertions.assertNotEquals(cacheKeyE, cacheKeyF);
- }
-
- @Test
- void testGetCacheKey() {
- String cacheKey = TaskCacheUtils.generateTagCacheKey(1, "123");
- Assertions.assertEquals("1-123", cacheKey);
- }
-
- @Test
- void testReplaceWithCheckSum() {
- String content = "abcdefg";
- String filePath = "test/testFile.txt.crc";
- FileUtils.writeContent2File(content, filePath);
-
- Property property = new Property();
- property.setProp("f1");
- property.setValue("testFile.txt");
- property.setType(DataType.FILE);
- property.setDirect(Direct.IN);
- TaskExecutionContext taskExecutionContext = new TaskExecutionContext();
- taskExecutionContext.setExecutePath("test");
- taskExecutionContext.setTenantCode("aaa");
-
- String crc = TaskCacheUtils.getValCheckSum(property,
taskExecutionContext, storageOperator);
- Assertions.assertEquals(crc, content);
- }
-
- @AfterEach
- public void tearDown() {
- FileUtils.deleteFile("test");
- }
-}
diff --git
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/AbstractTaskInstanceFactory.java
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/AbstractTaskInstanceFactory.java
index 163b9732da..0db29c77a0 100644
---
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/AbstractTaskInstanceFactory.java
+++
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/AbstractTaskInstanceFactory.java
@@ -57,7 +57,6 @@ public abstract class AbstractTaskInstanceFactory<BUILDER
extends ITaskInstanceF
result.setPid(originTaskInstance.getPid());
result.setAppLink(originTaskInstance.getAppLink());
result.setFlag(originTaskInstance.getFlag());
- result.setIsCache(originTaskInstance.getIsCache());
result.setMaxRetryTimes(originTaskInstance.getMaxRetryTimes());
result.setRetryInterval(originTaskInstance.getRetryInterval());
result.setTaskInstancePriority(originTaskInstance.getTaskInstancePriority());
@@ -83,7 +82,6 @@ public abstract class AbstractTaskInstanceFactory<BUILDER
extends ITaskInstanceF
taskInstance.setTaskType(taskDefinition.getTaskType());
taskInstance.setTaskCode(taskDefinition.getCode());
taskInstance.setTaskDefinitionVersion(taskDefinition.getVersion());
- taskInstance.setIsCache(taskDefinition.getIsCache());
taskInstance.setMaxRetryTimes(taskDefinition.getFailRetryTimes());
taskInstance.setRetryInterval(taskDefinition.getFailRetryInterval());
taskInstance.setTaskInstancePriority(taskDefinition.getTaskPriority());
diff --git
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/RetryTaskInstanceFactory.java
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/RetryTaskInstanceFactory.java
index 489bfc2c06..4d0daf0740 100644
---
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/RetryTaskInstanceFactory.java
+++
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/runnable/RetryTaskInstanceFactory.java
@@ -51,7 +51,6 @@ public class RetryTaskInstanceFactory extends
AbstractTaskInstanceFactory<RetryT
taskInstance.setHost(null);
taskInstance.setExecutePath(null);
taskInstance.setLogPath(null);
- taskInstance.setCacheKey(null);
taskInstance.setStartTime(null);
taskInstance.setEndTime(null);
taskInstance.setSubmitTime(new Date());
diff --git
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/model/TaskNode.java
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/model/TaskNode.java
index c9601f15b5..22ac1b95db 100644
---
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/model/TaskNode.java
+++
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/model/TaskNode.java
@@ -68,8 +68,6 @@ public class TaskNode {
*/
private String runFlag;
- private int isCache;
-
/**
* the front field
*/
@@ -246,14 +244,6 @@ public class TaskNode {
this.runFlag = runFlag;
}
- public int getIsCache() {
- return isCache;
- }
-
- public void setIsCache(int isCache) {
- this.isCache = isCache;
- }
-
public boolean isForbidden() {
// skip stream task when run DAG
if (taskExecuteType == TaskExecuteType.STREAM) {
diff --git
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessServiceImpl.java
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessServiceImpl.java
index d46a6698f3..47dcb676f6 100644
---
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessServiceImpl.java
+++
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessServiceImpl.java
@@ -1326,7 +1326,6 @@ public class ProcessServiceImpl implements ProcessService
{
taskNode.setCpuQuota(taskDefinitionLog.getCpuQuota());
taskNode.setMemoryMax(taskDefinitionLog.getMemoryMax());
taskNode.setTaskExecuteType(taskDefinitionLog.getTaskExecuteType());
- taskNode.setIsCache(taskDefinitionLog.getIsCache().getCode());
taskNodeList.add(taskNode);
}
}
diff --git
a/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/process/ProcessServiceTest.java
b/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/process/ProcessServiceTest.java
index c81d90878c..0177db26a2 100644
---
a/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/process/ProcessServiceTest.java
+++
b/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/process/ProcessServiceTest.java
@@ -21,7 +21,6 @@ import static
org.apache.dolphinscheduler.common.constants.CommandKeyConstants.C
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
-import org.apache.dolphinscheduler.common.enums.Flag;
import org.apache.dolphinscheduler.common.enums.TaskGroupQueueStatus;
import org.apache.dolphinscheduler.common.enums.UserType;
import org.apache.dolphinscheduler.common.graph.DAG;
@@ -276,7 +275,6 @@ public class ProcessServiceTest {
taskDefinition.setVersion(2);
taskDefinition.setCreateTime(new Date());
taskDefinition.setUpdateTime(new Date());
- taskDefinition.setIsCache(Flag.NO);
TaskDefinitionLog td2 = new TaskDefinitionLog();
td2.setCode(2L);
diff --git a/dolphinscheduler-ui/src/locales/en_US/project.ts
b/dolphinscheduler-ui/src/locales/en_US/project.ts
index 677f66391e..692d4df2d4 100644
--- a/dolphinscheduler-ui/src/locales/en_US/project.ts
+++ b/dolphinscheduler-ui/src/locales/en_US/project.ts
@@ -318,7 +318,6 @@ export default {
startup_parameter: 'Startup Parameter',
whether_dry_run: 'Whether Dry-Run',
please_choose: 'Please Choose',
- remove_task_cache: 'Clear cache',
delete_validate_dependent_tasks_desc:
'The downstream dependent tasks exists. You can not delete the task.'
},
@@ -366,7 +365,6 @@ export default {
online: 'Online'
},
node: {
- is_cache: 'Cache Execution',
jvm_args: 'Java VM Parameters',
jvm_args_tips: 'Please enter virtual machine parameters',
run_type: 'Run Type',
diff --git a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
index 76706e0490..4c2e18da71 100644
--- a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
+++ b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
@@ -314,7 +314,6 @@ export default {
startup_parameter: '启动参数',
whether_dry_run: '是否空跑',
please_choose: '请选择',
- remove_task_cache: '清除缓存',
delete_validate_dependent_tasks_desc: '下游存在依赖,你不能删除该任务定义'
},
dag: {
@@ -361,7 +360,6 @@ export default {
online: '已上线'
},
node: {
- is_cache: '缓存执行',
is_module_path: '使用模块路径',
run_type: '运行类型',
jvm_args: '虚拟机参数',
diff --git a/dolphinscheduler-ui/src/service/modules/task-instances/index.ts
b/dolphinscheduler-ui/src/service/modules/task-instances/index.ts
index 3e8b9c4e1a..4de389f131 100644
--- a/dolphinscheduler-ui/src/service/modules/task-instances/index.ts
+++ b/dolphinscheduler-ui/src/service/modules/task-instances/index.ts
@@ -54,13 +54,3 @@ export function savePoint(projectCode: number, taskId:
number): any {
method: 'post'
})
}
-
-export function removeTaskInstanceCache(
- projectCode: number,
- taskId: number
-): any {
- return axios({
- url: `projects/${projectCode}/task-instances/${taskId}/remove-cache`,
- method: 'delete'
- })
-}
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/index.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/index.ts
index 45f2c79aa0..2d84647942 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/index.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/index.ts
@@ -17,7 +17,6 @@
export { useName } from './use-name'
export { useRunFlag } from './use-run-flag'
-export { useCache } from './use-cache'
export { useDescription } from './use-description'
export { useTaskPriority } from './use-task-priority'
export { useWorkerGroup } from './use-worker-group'
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-cache.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-cache.ts
deleted file mode 100644
index fd7e90431c..0000000000
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-cache.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { useI18n } from 'vue-i18n'
-import type { IJsonItem } from '../types'
-
-export function useCache(): IJsonItem {
- const { t } = useI18n()
- return {
- type: 'switch',
- field: 'isCache',
- name: t('project.node.is_cache'),
- span: 12
- }
-}
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-run-flag.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-run-flag.ts
index ab61b88ce9..e320400791 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-run-flag.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-run-flag.ts
@@ -34,7 +34,6 @@ export function useRunFlag(): IJsonItem {
type: 'radio',
field: 'flag',
name: t('project.node.run_flag'),
- options: options,
- span: 12
+ options: options
}
}
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
index 1767c20de9..7e100d5681 100644
--- a/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
+++ b/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
@@ -482,7 +482,6 @@ export function formatParams(data: INodeData): {
: '0',
failRetryTimes: data.failRetryTimes ? String(data.failRetryTimes) : '0',
flag: data.flag,
- isCache: data.isCache ? 'YES' : 'NO',
name: data.name,
taskGroupId: data.taskGroupId,
taskGroupPriority: data.taskGroupPriority,
@@ -533,7 +532,6 @@ export function formatModel(data: ITaskData) {
...omit(data.taskParams, ['resourceList', 'mainJar', 'localParams']),
environmentCode: data.environmentCode === -1 ? null : data.environmentCode,
timeoutFlag: data.timeoutFlag === 'OPEN',
- isCache: data.isCache === 'YES',
timeoutNotifyStrategy: data.timeoutNotifyStrategy
? [data.timeoutNotifyStrategy]
: [],
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-aliyun-serverless-spark.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-aliyun-serverless-spark.ts
index 40ddbe857d..6ffeb5ea7c 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-aliyun-serverless-spark.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-aliyun-serverless-spark.ts
@@ -56,7 +56,6 @@ export function useAliyunServerlessSpark({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-chunjun.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-chunjun.ts
index fc24e1a7a8..2223e0b3e2 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-chunjun.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-chunjun.ts
@@ -56,7 +56,6 @@ export function useChunjun({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-data-factory.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-data-factory.ts
index 91fe1ff2f7..1ea010a4c2 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-data-factory.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-data-factory.ts
@@ -55,7 +55,6 @@ export function useDataFactory({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datasync.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datasync.ts
index 2c3f26c7b9..f46ac6bef9 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datasync.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datasync.ts
@@ -65,7 +65,6 @@ export function useDatasync({
Fields.useName(from),
...extra,
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datax.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datax.ts
index b1344fbf35..0304f06a75 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datax.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-datax.ts
@@ -59,7 +59,6 @@ export function useDataX({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dinky.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dinky.ts
index 846a6d7872..080ea473ad 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dinky.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dinky.ts
@@ -51,7 +51,6 @@ export function useDinky({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dms.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dms.ts
index b635b8b26a..28726b3719 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dms.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dms.ts
@@ -66,7 +66,6 @@ export function useDms({
Fields.useName(from),
...extra,
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dvc.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dvc.ts
index d8376a5c9c..eeeb9618c9 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dvc.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-dvc.ts
@@ -52,7 +52,6 @@ export function useDvc({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-emr.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-emr.ts
index 7af5aa3e3a..00fb55aa7a 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-emr.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-emr.ts
@@ -53,7 +53,6 @@ export function useEmr({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink-stream.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink-stream.ts
index 0b35f9f275..3b70abff30 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink-stream.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink-stream.ts
@@ -62,7 +62,6 @@ export function useFlinkStream({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink.ts
index 204bfc7141..9e956eb0ff 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-flink.ts
@@ -62,7 +62,6 @@ export function useFlink({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-hive-cli.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-hive-cli.ts
index a2f34f8f8d..cbe5bd7988 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-hive-cli.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-hive-cli.ts
@@ -65,7 +65,6 @@ export function useHiveCli({
Fields.useName(from),
...extra,
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-http.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-http.ts
index 0e5d5fe5ca..eeb42c51e0 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-http.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-http.ts
@@ -59,7 +59,6 @@ export function useHttp({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-java.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-java.ts
index bb7f26036d..8671e6e79a 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-java.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-java.ts
@@ -74,7 +74,6 @@ export function useJava({
Fields.useName(from),
...extra,
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-jupyter.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-jupyter.ts
index 1901209e73..21ca400ac5 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-jupyter.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-jupyter.ts
@@ -53,7 +53,6 @@ export function useJupyter({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-k8s.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-k8s.ts
index e20a506df6..e5ce9dad1a 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-k8s.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-k8s.ts
@@ -58,7 +58,6 @@ export function useK8s({
Fields.useName(),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-kubeflow.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-kubeflow.ts
index 1c721a6dcd..a9c82bea6a 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-kubeflow.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-kubeflow.ts
@@ -51,7 +51,6 @@ export function useKubeflow({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-linkis.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-linkis.ts
index 5507f79bf6..5d27ba4d95 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-linkis.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-linkis.ts
@@ -62,7 +62,6 @@ export function useLinkis({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mlflow.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mlflow.ts
index b25fdae436..b68c910a0c 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mlflow.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mlflow.ts
@@ -59,7 +59,6 @@ export function useMlflow({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mr.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mr.ts
index 4552133a20..ade3698895 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mr.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-mr.ts
@@ -53,7 +53,6 @@ export function useMr({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-openmldb.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-openmldb.ts
index 18bd0deadc..f878ce8f0c 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-openmldb.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-openmldb.ts
@@ -55,7 +55,6 @@ export function useOpenmldb({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-procedure.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-procedure.ts
index 90f2491613..2a0def32d5 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-procedure.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-procedure.ts
@@ -55,7 +55,6 @@ export function useProcedure({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-python.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-python.ts
index 09f598e1d4..d58a132010 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-python.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-python.ts
@@ -55,7 +55,6 @@ export function usePython({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
index 91df96706f..dee861e150 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
@@ -70,7 +70,6 @@ export function usePytorch({
Fields.useName(from),
...extra,
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-remote-shell.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-remote-shell.ts
index 977776510d..1340ee4572 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-remote-shell.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-remote-shell.ts
@@ -53,7 +53,6 @@ export function useRemoteShell({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sagemaker.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sagemaker.ts
index 88a38d8ea7..3e7d6ff5d7 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sagemaker.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sagemaker.ts
@@ -56,7 +56,6 @@ export function userSagemaker({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sea-tunnel.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sea-tunnel.ts
index 1cf03008b9..6df07f71f2 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sea-tunnel.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sea-tunnel.ts
@@ -86,7 +86,6 @@ export function useSeaTunnel({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-shell.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-shell.ts
index 96b1c9ce6c..a90ab59dd8 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-shell.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-shell.ts
@@ -54,7 +54,6 @@ export function useShell({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
index 1e5c929b0f..883950ae51 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
@@ -62,7 +62,6 @@ export function useSpark({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sql.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sql.ts
index 26db7b96dc..e967c2f09b 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sql.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sql.ts
@@ -58,7 +58,6 @@ export function useSql({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sqoop.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sqoop.ts
index f401fb6d2c..879b06858f 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sqoop.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-sqoop.ts
@@ -74,7 +74,6 @@ export function useSqoop({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-zeppelin.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-zeppelin.ts
index c8ac1260e4..8c072549a9 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-zeppelin.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-zeppelin.ts
@@ -56,7 +56,6 @@ export function useZeppelin({
Fields.useName(from),
...Fields.useTaskDefinition({ projectCode, from, readonly, data, model
}),
Fields.useRunFlag(),
- Fields.useCache(),
Fields.useDescription(),
Fields.useTaskPriority(),
Fields.useWorkerGroup(projectCode),
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
index ff4dcae33a..562e8f89c0 100644
--- a/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
+++ b/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
@@ -493,7 +493,6 @@ interface INodeData
cpuQuota?: number
memoryMax?: number
flag?: 'YES' | 'NO'
- isCache?: boolean
taskGroupId?: number
taskGroupPriority?: number
taskPriority?: string
@@ -524,11 +523,10 @@ interface INodeData
interface ITaskData
extends Omit<
INodeData,
- 'isCache' | 'timeoutFlag' | 'taskPriority' | 'timeoutNotifyStrategy'
+ 'timeoutFlag' | 'taskPriority' | 'timeoutNotifyStrategy'
> {
name?: string
taskPriority?: string
- isCache?: 'YES' | 'NO'
timeoutFlag?: 'OPEN' | 'CLOSE'
timeoutNotifyStrategy?: string | []
taskParams?: ITaskParams
diff --git
a/dolphinscheduler-ui/src/views/projects/workflow/components/dag/dag-context-menu.tsx
b/dolphinscheduler-ui/src/views/projects/workflow/components/dag/dag-context-menu.tsx
index 761c70eee7..1621af5783 100644
---
a/dolphinscheduler-ui/src/views/projects/workflow/components/dag/dag-context-menu.tsx
+++
b/dolphinscheduler-ui/src/views/projects/workflow/components/dag/dag-context-menu.tsx
@@ -123,12 +123,6 @@ export default defineComponent({
}
}
- const handleRemoveTaskInstanceCache = () => {
- if (props.taskInstance) {
- ctx.emit('removeTaskInstanceCache', props.taskInstance.id)
- }
- }
-
const handleCopy = () => {
const genNums = 1
const type = props.cell?.data.taskType
@@ -180,8 +174,7 @@ export default defineComponent({
handleViewLog,
handleExecuteTaskOnly,
handleExecuteTaskPOST,
- handleExecuteTaskPRE,
- handleRemoveTaskInstanceCache
+ handleExecuteTaskPRE
}
},
render() {
@@ -231,12 +224,6 @@ export default defineComponent({
>
{t('project.node.view_log')}
</NButton>
- <NButton
- class={`${styles['menu-item']}`}
- onClick={this.handleRemoveTaskInstanceCache}
- >
- {t('project.task.remove_task_cache')}
- </NButton>
</>
)}
{this.executeTaskDisplay && (
diff --git
a/dolphinscheduler-ui/src/views/projects/workflow/components/dag/index.tsx
b/dolphinscheduler-ui/src/views/projects/workflow/components/dag/index.tsx
index 78f0220285..c04cd5de65 100644
--- a/dolphinscheduler-ui/src/views/projects/workflow/components/dag/index.tsx
+++ b/dolphinscheduler-ui/src/views/projects/workflow/components/dag/index.tsx
@@ -57,7 +57,6 @@ import { useAsyncState } from '@vueuse/core'
import utils from '@/utils'
import { useUISettingStore } from '@/store/ui-setting/ui-setting'
import { executeTask } from '@/service/modules/executors'
-import { removeTaskInstanceCache } from '@/service/modules/task-instances'
import DependenciesModal from
'@/views/projects/components/dependencies/dependencies-modal'
const props = {
@@ -310,12 +309,6 @@ export default defineComponent({
})
}
- const handleRemoveTaskInstanceCache = (taskId: number) => {
- removeTaskInstanceCache(props.projectCode, taskId).then(() => {
- window.$message.success(t('project.workflow.success'))
- })
- }
-
const downloadLogs = () => {
utils.downloadFile('log/download-log', {
taskInstanceId: nodeVariables.logTaskId
@@ -438,7 +431,6 @@ export default defineComponent({
onRemoveTasks={removeTasks}
onViewLog={handleViewLog}
onExecuteTask={handleExecuteTask}
- onRemoveTaskInstanceCache={handleRemoveTaskInstanceCache}
v-model:dependenciesData={dependenciesData}
/>
<DependenciesModal