This is an automated email from the ASF dual-hosted git repository. leonbao pushed a commit to branch json_split in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
commit 49204a6b1354d48ed57c1901f08de6392fa8f590 Merge: 4a9099c 0c8d08c Author: lenboo <[email protected]> AuthorDate: Fri Jan 22 11:29:26 2021 +0800 merge from dev LICENSE | 4 + NOTICE | 2 +- .../dolphinscheduler/requirements.yaml~HEAD | 15 +- .../dolphinscheduler/requirements.yaml~dev | 15 +- .../dolphinscheduler-alert-dingtalk}/pom.xml | 97 +-- .../alert/dingtalk/DingTalkAlertChannel.java | 36 +- .../dingtalk/DingTalkAlertChannelFactory.java | 89 +++ .../plugin/alert/dingtalk/DingTalkAlertPlugin.java | 24 +- .../alert/dingtalk/DingTalkParamsConstants.java | 57 ++ .../plugin/alert/dingtalk/DingTalkSender.java | 204 ++++++ .../dingtalk/DingTalkAlertChannelFactoryTest.java | 48 ++ .../plugin/alert/dingtalk/DingTalkSenderTest.java | 57 ++ .../dolphinscheduler-alert-email}/pom.xml | 111 +-- .../plugin/alert/email/EmailAlertChannel.java | 69 ++ .../alert/email/EmailAlertChannelFactory.java | 137 ++++ .../plugin/alert/email/EmailAlertPlugin.java | 25 +- .../plugin/alert/email/EmailConstants.java | 75 ++ .../plugin/alert/email}/ExcelUtils.java | 24 +- .../plugin/alert/email/MailParamsConstants.java | 65 ++ .../plugin/alert/email/MailSender.java | 429 ++++++++++++ .../alert/email}/template/AlertTemplate.java | 21 +- .../alert/email/template}/DefaultHTMLTemplate.java | 53 +- .../alert/email/EmailAlertChannelFactoryTest.java | 75 ++ .../plugin/alert/email/EmailAlertChannelTest.java | 161 +++++ .../plugin/alert/email}/ExcelUtilsTest.java | 10 +- .../plugin/alert/email/MailUtilsTest.java | 136 ++++ .../email/template/DefaultHTMLTemplateTest.java | 105 +++ .../dolphinscheduler-alert-http}/pom.xml | 95 +-- .../plugin/alert/http/HttpAlertChannel.java | 36 +- .../plugin/alert/http/HttpAlertChannelFactory.java | 78 +++ .../plugin/alert/http/HttpAlertConstants.java | 22 +- .../plugin/alert/http/HttpAlertPlugin.java | 24 +- .../plugin/alert/http/HttpSender.java | 166 +++++ .../alert/http/HttpAlertChannelFactoryTest.java | 46 +- .../plugin/alert/http/HttpAlertChannelTest.java | 104 +++ .../plugin/alert/http/HttpAlertPluginTest.java | 33 +- .../plugin/alert/http/HttpSenderTest.java | 50 +- .../dolphinscheduler-alert-script}/pom.xml | 96 +-- .../plugin/alert/script/OSUtils.java | 19 +- .../plugin/alert/script/ProcessUtils.java | 62 ++ .../plugin/alert/script/ScriptAlertChannel.java | 37 +- .../alert/script/ScriptAlertChannelFactory.java | 71 ++ .../plugin/alert/script/ScriptAlertPlugin.java | 23 +- .../plugin/alert/script/ScriptParamsConstants.java | 33 +- .../plugin/alert/script/ScriptSender.java | 74 ++ .../plugin/alert/script/ScriptType.java | 49 +- .../plugin/alert/script/StreamGobbler.java | 53 +- .../plugin/alert/script/ProcessUtilsTest.java | 32 +- .../script/ScriptAlertChannelFactoryTest.java | 48 ++ .../plugin/alert/script/ScriptSenderTest.java | 58 ++ .../src/test/script/shell/example.sh | 13 +- .../src/test/script/shell/scriptTest.sh | 13 +- .../dolphinscheduler-alert-wechat/pom.xml | 78 +++ .../plugin/alert/wechat/WeChatAlertChannel.java | 36 +- .../alert/wechat/WeChatAlertChannelFactory.java | 94 +++ .../plugin/alert/wechat/WeChatAlertConstants.java | 29 +- .../alert/wechat/WeChatAlertParamsConstants.java | 56 ++ .../plugin/alert/wechat/WeChatAlertPlugin.java | 24 +- .../plugin/alert/wechat/WeChatSender.java | 335 +++++++++ .../wechat/WeChatAlertChannelFactoryTest.java | 48 ++ .../plugin/alert/wechat/WeChatSenderTest.java | 89 +++ .../pom.xml | 47 +- dolphinscheduler-alert/pom.xml | 79 ++- .../apache/dolphinscheduler/alert/AlertServer.java | 126 +++- .../alert/manager/EmailManager.java | 110 +-- .../alert/manager/EnterpriseWeChatManager.java | 59 -- .../dolphinscheduler/alert/manager/MsgManager.java | 10 +- .../alert/plugin/AbstractDolphinPluginManager.java | 18 +- .../alert/plugin/AlertPluginManager.java | 99 +++ .../alert/plugin/DolphinPluginClassLoader.java | 139 ++++ .../alert/plugin/DolphinPluginDiscovery.java | 139 ++++ .../alert/plugin/DolphinPluginLoader.java | 194 ++++++ .../alert/plugin/DolphinPluginManagerConfig.java | 121 ++++ .../alert/plugin/EmailAlertPlugin.java | 147 ---- .../alert/processor/AlertRequestProcessor.java | 67 ++ .../dolphinscheduler/alert/runner/AlertSender.java | 174 +++-- .../dolphinscheduler/alert/utils/Constants.java | 172 +---- .../alert/utils/DingTalkUtils.java | 141 ---- .../alert/utils/EnterpriseWeChatUtils.java | 286 -------- .../dolphinscheduler/alert/utils/MailUtils.java | 375 ---------- .../alert/utils/PropertyUtils.java | 2 +- .../src/main/resources/alert.properties | 49 +- .../dolphinscheduler/alert/AlertServerTest.java | 91 +++ .../alert/plugin/AlertPluginManagerTest.java | 65 ++ .../alert/plugin/DolphinPluginLoaderTest.java | 60 ++ .../alert/plugin/EmailAlertPluginTest.java | 253 +++++-- .../alert/processor/AlertRequestProcessorTest.java | 61 ++ .../alert/runner/AlertSenderTest.java | 181 +++++ .../alert/template/AlertTemplateFactoryTest.java | 65 -- .../template/impl/DefaultHTMLTemplateTest.java | 96 --- .../alert/utils/DingTalkUtilsTest.java | 120 ---- .../alert/utils/EnterpriseWeChatUtilsTest.java | 283 -------- .../alert/utils/FuncUtilsTest.java | 10 +- .../alert/utils/MailUtilsTest.java | 190 ------ .../api/controller/AlertGroupController.java | 113 ++- .../controller/AlertPluginInstanceController.java | 240 +++++++ .../api/controller/ExecutorController.java | 113 ++- .../api/controller/SchedulerController.java | 132 ++-- .../api/controller/UiPluginController.java | 93 +++ .../apache/dolphinscheduler/api/enums/Status.java | 17 +- .../api/service/AlertGroupService.java | 84 +-- .../api/service/AlertPluginInstanceService.java | 89 +++ .../api/service/ExecutorService.java | 47 +- .../api/service/ProcessInstanceService.java | 3 +- .../api/service/SchedulerService.java | 97 ++- .../api/service/UiPluginService.java | 14 +- .../dolphinscheduler/api/service/UsersService.java | 10 +- .../impl/AlertPluginInstanceServiceImpl.java | 208 ++++++ .../service/impl/ProcessDefinitionServiceImpl.java | 7 +- .../impl/ProcessDefinitionVersionServiceImpl.java | 23 +- .../api/service/impl/UiPluginServiceImpl.java | 85 +++ .../api/vo/AlertPluginInstanceVO.java | 117 ++++ .../src/main/resources/i18n/messages.properties | 5 + .../main/resources/i18n/messages_en_US.properties | 5 + .../api/controller/ExecutorControllerTest.java | 100 ++- .../api/controller/TaskInstanceControllerTest.java | 1 + .../api/security/SecurityConfigLDAPTest.java~HEAD} | 35 +- .../api/security/SecurityConfigLDAPTest.java~dev} | 35 +- .../api/service/AlertGroupServiceTest.java | 129 ++-- .../api/service/ExecutorService2Test.java | 147 ++-- .../ProcessDefinitionVersionServiceTest.java | 23 +- .../api/service/ProcessInstanceServiceTest.java | 2 - .../api/service/UiPluginServiceTest.java | 86 +++ .../api/service/UserAlertGroupServiceTest.java | 53 -- dolphinscheduler-common/pom.xml | 5 - .../apache/dolphinscheduler/common/Constants.java | 8 +- .../enums/{ShowType.java => PluginType.java} | 55 +- .../common/plugin/FilePluginManager.java | 107 --- .../common/plugin/PluginClassLoader.java | 154 ----- .../common/task/sql/SqlParameters.java | 67 +- .../common/plugin/FilePluginManagerTest.java | 72 -- .../common/plugin/PluginClassLoaderTest.java | 61 -- .../org/apache/dolphinscheduler/dao/AlertDao.java | 102 +-- .../org/apache/dolphinscheduler/dao/PluginDao.java | 96 +++ .../apache/dolphinscheduler/dao/entity/Alert.java | 121 +--- .../dolphinscheduler/dao/entity/AlertGroup.java | 71 +- ...serAlertGroup.java => AlertPluginInstance.java} | 104 ++- .../{UserAlertGroup.java => PluginDefine.java} | 107 ++- .../dao/entity/ProcessDefinition.java | 95 ++- .../dao/entity/ProcessDefinitionVersion.java | 88 +-- .../dao/entity/ProcessInstance.java | 36 +- .../dao/mapper/AlertGroupMapper.java | 13 +- ...pMapper.java => AlertPluginInstanceMapper.java} | 32 +- ...ertGroupMapper.java => PluginDefineMapper.java} | 46 +- .../src/main/resources/datasource.properties | 8 +- .../dao/mapper/AlertGroupMapper.xml | 19 +- .../dolphinscheduler/dao/mapper/AlertMapper.xml | 5 +- ...oupMapper.xml => AlertPluginInstanceMapper.xml} | 44 +- .../dao/mapper/PluginDefineMapper.xml | 45 ++ .../dao/mapper/ProcessDefinitionMapper.xml | 13 +- .../dao/mapper/ProcessDefinitionVersionMapper.xml | 5 +- .../dolphinscheduler/dao/mapper/ProjectMapper.xml | 1 + .../apache/dolphinscheduler/dao/AlertDaoTest.java | 21 +- .../dao/mapper/AlertGroupMapperTest.java | 189 ++--- .../dao/mapper/AlertMapperTest.java | 67 +- .../dao/mapper/AlertPluginInstanceMapperTest.java | 112 +++ .../dao/mapper/PluginDefineTest.java | 77 +++ .../dao/mapper/ProcessDefinitionMapperTest.java | 4 - .../mapper/ProcessDefinitionVersionMapperTest.java | 4 - .../dao/mapper/UserAlertGroupMapperTest.java | 196 ------ .../dao/mapper/UserMapperTest.java | 122 +--- dolphinscheduler-dist/pom.xml | 2 +- dolphinscheduler-dist/release-docs/LICENSE | 12 +- dolphinscheduler-dist/release-docs/NOTICE | 25 +- .../release-docs/licenses/LICENSE-aether-api.txt | 86 +++ .../LICENSE-animal-sniffer-annotations.txt | 21 + .../licenses/LICENSE-checker-compat-qual.txt | 22 + .../licenses/LICENSE-j2objc-annotations.txt | 21 +- .../release-docs/licenses/LICENSE-javax.mail.txt | 759 --------------------- .../release-docs/licenses/LICENSE-resolver.txt | 18 +- .../ui-licenses/LICENSE-@form-create-element-ui | 21 + .../src/main/provisio/dolphinscheduler.xml | 67 ++ .../plugin/utils/PropertyUtils.java | 190 ------ .../plugin/model/AlertDataTest.java | 80 --- .../plugin/utils/PropertyUtilsTest.java | 83 --- .../remote/command/CommandType.java | 12 +- .../command/alert/AlertSendRequestCommand.java | 80 +++ .../command/alert/AlertSendResponseCommand.java | 75 ++ .../command/alert/AlertSendResponseResult.java | 41 +- .../remote/utils/JsonSerializer.java | 96 +++ .../command/alert/AlertSendRequestCommandTest.java | 48 +- .../alert/AlertSendResponseCommandTest.java | 48 ++ dolphinscheduler-server/pom.xml | 325 ++++----- .../server/log/TaskLogAppender.java | 8 +- .../master/runner/MasterBaseTaskExecThread.java | 64 +- .../server/master/runner/MasterTaskExecThread.java | 59 +- .../server/utils/AlertManager.java | 14 +- .../server/worker/WorkerServer.java | 23 +- .../server/worker/config/WorkerConfig.java | 19 +- .../worker/processor/TaskExecuteProcessor.java | 18 +- .../server/worker/runner/TaskExecuteThread.java | 11 +- .../server/worker/task/TaskManager.java | 6 +- .../server/worker/task/sql/SqlTask.java | 254 +++---- .../src/main/resources/worker.properties | 3 + .../server/registry/DependencyConfig.java | 84 ++- .../processor/TaskCallbackServiceTestConfig.java | 71 +- .../worker/runner/TaskExecuteThreadTest.java | 17 +- .../server/worker/task/TaskManagerTest.java | 27 +- .../server/worker/task/sql/SqlTaskTest.java | 111 +++ .../service/alert/AlertClientService.java | 120 ++++ .../service/process/ProcessService.java | 5 +- .../service/alert/AlertClientServiceTest.java | 152 +++++ .../pom.xml | 36 +- .../spi/DolphinSchedulerPlugin.java | 38 ++ .../dolphinscheduler/spi/alert/AlertChannel.java | 17 +- .../spi/alert/AlertChannelFactory.java | 37 +- .../dolphinscheduler/spi/alert/AlertConstants.java | 17 +- .../dolphinscheduler/spi/alert}/AlertData.java | 56 +- .../dolphinscheduler/spi/alert/AlertInfo.java | 37 +- .../dolphinscheduler/spi/alert/AlertResult.java | 30 +- .../dolphinscheduler/spi/alert}/ShowType.java | 8 +- .../spi/classloader/ThreadContextClassLoader.java | 27 +- .../dolphinscheduler/spi/params/InputParam.java | 94 +++ .../dolphinscheduler/spi/params/PasswordParam.java | 87 +++ .../spi/params/PluginParamsTransfer.java | 51 ++ .../dolphinscheduler/spi/params/RadioParam.java | 106 +++ .../dolphinscheduler/spi/params/base/DataType.java | 27 +- .../dolphinscheduler/spi/params/base/FormType.java | 25 +- .../spi/params/base/ParamsOptions.java | 72 ++ .../spi/params/base/ParamsProps.java | 33 +- .../spi/params/base/PluginParams.java | 170 +++++ .../spi/params/base/PropsType.java | 24 +- .../spi/params/base/TriggerType.java | 23 +- .../dolphinscheduler/spi/params/base/Validate.java | 137 ++++ .../dolphinscheduler/spi/utils/JSONUtils.java | 156 +++++ .../dolphinscheduler/spi/utils/StringUtils.java | 32 +- .../spi/params/PluginParamsTransferTest.java | 201 ++++++ install.sh | 2 + pom.xml | 124 +++- sql/dolphinscheduler-postgre.sql | 99 +-- sql/dolphinscheduler_mysql.sql | 103 +-- .../1.4.0_schema/mysql/dolphinscheduler_ddl.sql | 69 ++ .../1.4.0_schema/mysql/dolphinscheduler_dml.sql | 21 +- .../postgresql/dolphinscheduler_ddl.sql | 65 ++ .../postgresql/dolphinscheduler_dml.sql | 19 +- style/checkstyle.xml | 8 +- style/intellij-java-code-style.xml | 2 - tools/dependencies/known-dependencies.txt | 13 +- 238 files changed, 10976 insertions(+), 7070 deletions(-) diff --cc dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessDefinition.java index ee8cc98,0c2b844..5cf81c2 --- a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessDefinition.java +++ b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessDefinition.java @@@ -401,52 -366,42 +379,59 @@@ public class ProcessDefinition this.modifyBy = modifyBy; } + public Long getCode() { + return code; + } + + public void setCode(Long code) { + this.code = code; + } + + public Long getProjectCode() { + return projectCode; + } + + public void setProjectCode(Long projectCode) { + this.projectCode = projectCode; + } + + public int getWarningGroupId() { + return warningGroupId; + } + + public void setWarningGroupId(int warningGroupId) { + this.warningGroupId = warningGroupId; + } + @Override public String toString() { return "ProcessDefinition{" - + "id=" + id - + ", code=" + code - + ", name='" + name + '\'' - + ", version=" + version - + ", releaseState=" + releaseState - + ", projectId=" + projectId - + ", projectCode=" + projectCode - + ", processDefinitionJson='" + processDefinitionJson + '\'' - + ", description='" + description + '\'' - + ", globalParams='" + globalParams + '\'' - + ", globalParamList=" + globalParamList - + ", globalParamMap=" + globalParamMap - + ", createTime=" + createTime - + ", updateTime=" + updateTime - + ", flag=" + flag - + ", userId=" + userId - + ", userName='" + userName + '\'' - + ", projectName='" + projectName + '\'' - + ", locations='" + locations + '\'' - + ", connects='" + connects + '\'' - + ", receivers='" + receivers + '\'' - + ", receiversCc='" + receiversCc + '\'' - + ", scheduleReleaseState=" + scheduleReleaseState - + ", timeout=" + timeout - + ", tenantId=" + tenantId - + ", modifyBy='" + modifyBy + '\'' - + ", resourceIds='" + resourceIds + '\'' - + '}'; + + "id=" + id + + ", name='" + name + '\'' ++ + ", code=" + code + + ", version=" + version + + ", releaseState=" + releaseState + + ", projectId=" + projectId ++ + ", projectCode=" + projectCode + + ", processDefinitionJson='" + processDefinitionJson + '\'' + + ", description='" + description + '\'' + + ", globalParams='" + globalParams + '\'' + + ", globalParamList=" + globalParamList + + ", globalParamMap=" + globalParamMap + + ", createTime=" + createTime + + ", updateTime=" + updateTime + + ", flag=" + flag + + ", userId=" + userId + + ", userName='" + userName + '\'' + + ", projectName='" + projectName + '\'' + + ", locations='" + locations + '\'' + + ", connects='" + connects + '\'' + + ", scheduleReleaseState=" + scheduleReleaseState + + ", timeout=" + timeout + + ", warningGroupId=" + warningGroupId + + ", tenantId=" + tenantId + + ", modifyBy='" + modifyBy + '\'' + + ", resourceIds='" + resourceIds + '\'' + + '}'; } - } diff --cc sql/dolphinscheduler-postgre.sql index f98110c,8ca6cd8..201778e --- a/sql/dolphinscheduler-postgre.sql +++ b/sql/dolphinscheduler-postgre.sql @@@ -290,49 -287,24 +287,48 @@@ CREATE TABLE t_ds_error_command DROP TABLE IF EXISTS t_ds_process_definition; CREATE TABLE t_ds_process_definition ( id int NOT NULL , + code bigint NOT NULL, name varchar(255) DEFAULT NULL , version int DEFAULT NULL , + description text , + project_code bigint DEFAULT NULL , release_state int DEFAULT NULL , - project_id int DEFAULT NULL , user_id int DEFAULT NULL , - process_definition_json text , - description text , global_params text , + locations text , ++ warning_group_id int4 DEFAULT NULL , flag int DEFAULT NULL , - receivers text , - receivers_cc text , + timeout int DEFAULT '0' , + tenant_id int NOT NULL DEFAULT '-1' , + create_time timestamp DEFAULT NULL , + update_time timestamp DEFAULT NULL , + PRIMARY KEY (id), + CONSTRAINT process_definition_unique UNIQUE (name, project_id) +) ; + +create index process_definition_index on t_ds_process_definition (project_code,id); + +DROP TABLE IF EXISTS t_ds_process_definition_log; +CREATE TABLE t_ds_process_definition_log ( + id int NOT NULL , + code bigint NOT NULL, + name varchar(255) DEFAULT NULL , + version int DEFAULT NULL , + description text , + project_code bigint DEFAULT NULL , + release_state int DEFAULT NULL , + user_id int DEFAULT NULL , + global_params text , locations text , + connects text , + warning_group_id int4 DEFAULT NULL , - create_time timestamp DEFAULT NULL , + flag int DEFAULT NULL , - receivers text , - receivers_cc text , timeout int DEFAULT '0' , tenant_id int NOT NULL DEFAULT '-1' , + operator int DEFAULT NULL , + operate_time timestamp DEFAULT NULL , + create_time timestamp DEFAULT NULL , update_time timestamp DEFAULT NULL , - modify_by varchar(36) DEFAULT '' , - resource_ids varchar(64), PRIMARY KEY (id), CONSTRAINT process_definition_unique UNIQUE (name, project_id) ) ; diff --cc sql/dolphinscheduler_mysql.sql index 4b4596d,890e003..30ffba8 --- a/sql/dolphinscheduler_mysql.sql +++ b/sql/dolphinscheduler_mysql.sql @@@ -394,25 -391,28 +391,26 @@@ CREATE TABLE `t_ds_error_command` -- ---------------------------- DROP TABLE IF EXISTS `t_ds_process_definition`; CREATE TABLE `t_ds_process_definition` ( - `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'key', - `name` varchar(255) DEFAULT NULL COMMENT 'process definition name', + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `code` bigint(20) NOT NULL COMMENT 'encoding', + `name` varchar(200) DEFAULT NULL COMMENT 'process definition name', `version` int(11) DEFAULT NULL COMMENT 'process definition version', + `description` text COMMENT 'description', + `project_code` bigint(20) NOT NULL COMMENT 'project code', `release_state` tinyint(4) DEFAULT NULL COMMENT 'process definition release state:0:offline,1:online', - `project_id` int(11) DEFAULT NULL COMMENT 'project id', `user_id` int(11) DEFAULT NULL COMMENT 'process definition creator id', - `process_definition_json` longtext COMMENT 'process definition json content', - `description` text, `global_params` text COMMENT 'global parameters', + `locations` text COMMENT 'node location information', `flag` tinyint(4) DEFAULT NULL COMMENT '0 not available, 1 available', - `receivers` text COMMENT 'receivers', - `receivers_cc` text COMMENT 'cc', + `locations` text COMMENT 'Node location information', + `connects` text COMMENT 'Node connection information', + `warning_group_id` int(11) DEFAULT NULL COMMENT 'alert group id', - `create_time` datetime DEFAULT NULL COMMENT 'create time', - `timeout` int(11) DEFAULT '0' COMMENT 'time out', + `timeout` int(11) DEFAULT '0' COMMENT 'time out, unit: minute', `tenant_id` int(11) NOT NULL DEFAULT '-1' COMMENT 'tenant id', + `create_time` datetime NOT NULL COMMENT 'create time', `update_time` datetime DEFAULT NULL COMMENT 'update time', - `modify_by` varchar(255) DEFAULT NULL, - `resource_ids` varchar(255) DEFAULT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `process_definition_unique` (`name`,`project_id`), - KEY `process_definition_index` (`project_id`,`id`) USING BTREE + PRIMARY KEY (`id`,`code`), + UNIQUE KEY `process_unique` (`name`,`project_code`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; -- ---------------------------- @@@ -420,131 -420,6 +418,131 @@@ -- ---------------------------- -- ---------------------------- +-- Table structure for t_ds_process_definition_log +-- ---------------------------- +CREATE TABLE `t_ds_process_definition_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `code` bigint(20) NOT NULL COMMENT 'encoding', + `name` varchar(200) DEFAULT NULL COMMENT 'process definition name', + `version` int(11) DEFAULT NULL COMMENT 'process definition version', + `description` text COMMENT 'description', + `project_code` bigint(20) NOT NULL COMMENT 'project code', + `release_state` tinyint(4) DEFAULT NULL COMMENT 'process definition release state:0:offline,1:online', + `user_id` int(11) DEFAULT NULL COMMENT 'process definition creator id', + `global_params` text COMMENT 'global parameters', - `locations` text COMMENT 'node location information', + `flag` tinyint(4) DEFAULT NULL COMMENT '0 not available, 1 available', - `receivers` text COMMENT 'receivers', - `receivers_cc` text COMMENT 'cc', ++ `locations` text COMMENT 'Node location information', ++ `connects` text COMMENT 'Node connection information', ++ `warning_group_id` int(11) DEFAULT NULL COMMENT 'alert group id', + `timeout` int(11) DEFAULT '0' COMMENT 'time out,unit: minute', + `tenant_id` int(11) NOT NULL DEFAULT '-1' COMMENT 'tenant id', + `operator` int(11) DEFAULT NULL COMMENT 'operator user id', + `operate_time` datetime DEFAULT NULL COMMENT 'operate time', + `create_time` datetime NOT NULL COMMENT 'create time', + `update_time` datetime DEFAULT NULL COMMENT 'update time', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; + +-- ---------------------------- +-- Table structure for t_ds_task_definition +-- ---------------------------- +CREATE TABLE `t_ds_task_definition` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `code` bigint(20) NOT NULL COMMENT 'encoding', + `name` varchar(200) DEFAULT NULL COMMENT 'task definition name', + `version` int(11) DEFAULT NULL COMMENT 'task definition version', + `description` text COMMENT 'description', + `project_code` bigint(20) NOT NULL COMMENT 'project code', + `user_id` int(11) DEFAULT NULL COMMENT 'task definition creator id', + `task_type` tinyint(4) DEFAULT NULL COMMENT '0 shell,1 sql,2 sub_process,3 procedure,4 mr,5 spark,6 python,7 dependent,8 flink,9 http,10 datax,11 conditions,12 sqoop,13 waterdrop', + `task_params` text COMMENT 'job custom parameters', + `flag` tinyint(2) DEFAULT NULL COMMENT '0 not available, 1 available', + `task_priority` tinyint(4) DEFAULT NULL COMMENT 'job priority', + `worker_group` varchar(200) DEFAULT NULL COMMENT 'worker grouping', + `fail_retry_times` int(11) DEFAULT NULL COMMENT 'number of failed retries', + `fail_retry_interval` int(11) DEFAULT NULL COMMENT 'failed retry interval', + `timeout_flag` tinyint(1) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open', + `timeout_notify_strategy` tinyint(4) DEFAULT NULL COMMENT 'timeout notification policy: 0 warning, 1 fail', + `timeout` int(11) DEFAULT '0' COMMENT 'timeout length,unit: minute', + `resource_ids` varchar(255) DEFAULT NULL COMMENT 'resource id, separated by comma', + `create_time` datetime NOT NULL COMMENT 'create time', + `update_time` datetime DEFAULT NULL COMMENT 'update time', + PRIMARY KEY (`id`,`code`), + UNIQUE KEY `task_unique` (`name`,`project_code`) USING BTREE +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; + +-- ---------------------------- +-- Table structure for t_ds_task_definition_log +-- ---------------------------- +CREATE TABLE `t_ds_task_definition_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `code` bigint(20) NOT NULL COMMENT 'encoding', + `name` varchar(200) DEFAULT NULL COMMENT 'task definition name', + `version` int(11) DEFAULT NULL COMMENT 'task definition version', + `description` text COMMENT 'description', + `project_code` bigint(20) NOT NULL COMMENT 'project code', + `user_id` int(11) DEFAULT NULL COMMENT 'task definition creator id', + `task_type` tinyint(4) DEFAULT NULL COMMENT '0 shell,1 sql,2 sub_process,3 procedure,4 mr,5 spark,6 python,7 dependent,8 flink,9 http,10 datax,11 conditions,12 sqoop,13 waterdrop', + `task_params` text COMMENT 'job custom parameters', + `flag` tinyint(2) DEFAULT NULL COMMENT '0 not available, 1 available', + `task_priority` tinyint(4) DEFAULT NULL COMMENT 'job priority', + `worker_group` varchar(200) DEFAULT NULL COMMENT 'worker grouping', + `fail_retry_times` int(11) DEFAULT NULL COMMENT 'number of failed retries', + `fail_retry_interval` int(11) DEFAULT NULL COMMENT 'failed retry interval', + `timeout_flag` tinyint(1) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open', + `timeout_notify_strategy` tinyint(4) DEFAULT NULL COMMENT 'timeout notification policy: 0 warning, 1 fail', + `timeout` int(11) DEFAULT '0' COMMENT 'timeout length,unit: minute', + `resource_ids` varchar(255) DEFAULT NULL COMMENT 'resource id, separated by comma', + `operator` int(11) DEFAULT NULL COMMENT 'operator user id', + `operate_time` datetime DEFAULT NULL COMMENT 'operate time', + `create_time` datetime NOT NULL COMMENT 'create time', + `update_time` datetime DEFAULT NULL COMMENT 'update time', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; + +-- ---------------------------- +-- Table structure for t_ds_process_task_relation +-- ---------------------------- +CREATE TABLE `t_ds_process_task_relation` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `name` varchar(200) DEFAULT NULL COMMENT 'relation name', + `version` int(11) DEFAULT NULL COMMENT 'relation version', + `project_code` bigint(20) NOT NULL COMMENT 'project code', + `process_definition_code` bigint(20) NOT NULL COMMENT 'process code', + `pre_project_code` bigint(20) NOT NULL COMMENT 'pre process code', + `pre_task_code` bigint(20) NOT NULL COMMENT 'pre task code', + `post_project_code` bigint(20) NOT NULL COMMENT 'post process code', + `post_task_code` bigint(20) NOT NULL COMMENT 'post task code', + `condition_type` tinyint(2) DEFAULT NULL COMMENT 'condition type : 0 none, 1 judge 2 delay', + `condition_params` text COMMENT 'condition params(json)', + `create_time` datetime NOT NULL COMMENT 'create time', + `update_time` datetime DEFAULT NULL COMMENT 'update time', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; + +-- ---------------------------- +-- Table structure for t_ds_process_task_relation_log +-- ---------------------------- +CREATE TABLE `t_ds_process_task_relation_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'self-increasing id', + `name` varchar(200) DEFAULT NULL COMMENT 'relation name', + `version` int(11) DEFAULT NULL COMMENT 'relation version', + `project_code` bigint(20) NOT NULL COMMENT 'project code', + `process_definition_code` bigint(20) NOT NULL COMMENT 'process code', + `pre_project_code` bigint(20) NOT NULL COMMENT 'pre process code', + `pre_task_code` bigint(20) NOT NULL COMMENT 'pre task code', + `post_project_code` bigint(20) NOT NULL COMMENT 'post process code', + `post_task_code` bigint(20) NOT NULL COMMENT 'post task code', + `condition_type` tinyint(2) DEFAULT NULL COMMENT 'condition type : 0 none, 1 judge 2 delay', + `condition_params` text COMMENT 'condition params(json)', + `operator` int(11) DEFAULT NULL COMMENT 'operator user id', + `operate_time` datetime DEFAULT NULL COMMENT 'operate time', + `create_time` datetime NOT NULL COMMENT 'create time', + `update_time` datetime DEFAULT NULL COMMENT 'update time', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; + +-- ---------------------------- -- Table structure for t_ds_process_definition_version -- ---------------------------- DROP TABLE IF EXISTS `t_ds_process_definition_version`; @@@ -605,8 -482,9 +602,9 @@@ CREATE TABLE `t_ds_process_instance` `worker_group` varchar(64) DEFAULT NULL COMMENT 'worker group id', `timeout` int(11) DEFAULT '0' COMMENT 'time out', `tenant_id` int(11) NOT NULL DEFAULT '-1' COMMENT 'tenant id', + `var_pool` longtext COMMENT 'var_pool', PRIMARY KEY (`id`), - KEY `process_instance_index` (`process_definition_id`,`id`) USING BTREE, + KEY `process_instance_index` (`process_definition_code`,`id`) USING BTREE, KEY `start_time_index` (`start_time`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
