diff --git a/others/powerjob-mysql.sql b/others/powerjob-mysql.sql index 36403564..6e31428a 100644 --- a/others/powerjob-mysql.sql +++ b/others/powerjob-mysql.sql @@ -16,7 +16,7 @@ Target Server Version : 80300 (8.3.0) File Encoding : 65001 - Date: 16/03/2024 22:07:31 + Date: 11/08/2024 23:23:30 */ SET NAMES utf8mb4; diff --git a/others/sql/schema/powerjob_mysql_4.3.9.sql b/others/sql/schema/powerjob_mysql_4.3.9.sql new file mode 100644 index 00000000..b6a790c9 --- /dev/null +++ b/others/sql/schema/powerjob_mysql_4.3.9.sql @@ -0,0 +1,243 @@ +/* + Navicat Premium Data Transfer + + Source Server : Local@3306 + Source Server Type : MySQL + Source Server Version : 80300 (8.3.0) + Source Host : localhost:3306 + Source Schema : powerjob4 + + Target Server Type : MySQL + Target Server Version : 80300 (8.3.0) + File Encoding : 65001 + + Date: 02/03/2024 18:51:36 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for app_info +-- ---------------------------- +DROP TABLE IF EXISTS `app_info`; +CREATE TABLE `app_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_name` varchar(255) DEFAULT NULL, + `current_server` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_app_info` (`app_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for container_info +-- ---------------------------- +DROP TABLE IF EXISTS `container_info`; +CREATE TABLE `container_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `container_name` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `last_deploy_time` datetime(6) DEFAULT NULL, + `source_info` varchar(255) DEFAULT NULL, + `source_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `version` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_container_info` (`app_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `instance_info`; +CREATE TABLE `instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_id` bigint DEFAULT NULL, + `instance_params` longtext, + `job_id` bigint DEFAULT NULL, + `job_params` longtext, + `last_report_time` bigint DEFAULT NULL, + `result` longtext, + `running_times` bigint DEFAULT NULL, + `status` int DEFAULT NULL, + `task_tracker_address` varchar(255) DEFAULT NULL, + `type` int DEFAULT NULL, + `wf_instance_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_instance_info` (`job_id`,`status`), + KEY `idx02_instance_info` (`app_id`,`status`), + KEY `idx03_instance_info` (`instance_id`,`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for job_info +-- ---------------------------- +DROP TABLE IF EXISTS `job_info`; +CREATE TABLE `job_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `advanced_runtime_config` varchar(255) DEFAULT NULL, + `alarm_config` varchar(255) DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `concurrency` int DEFAULT NULL, + `designated_workers` varchar(255) DEFAULT NULL, + `dispatch_strategy` int DEFAULT NULL, + `dispatch_strategy_config` varchar(255) DEFAULT NULL, + `execute_type` int DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_retry_num` int DEFAULT NULL, + `instance_time_limit` bigint DEFAULT NULL, + `job_description` varchar(255) DEFAULT NULL, + `job_name` varchar(255) DEFAULT NULL, + `job_params` longtext, + `lifecycle` varchar(255) DEFAULT NULL, + `log_config` varchar(255) DEFAULT NULL, + `max_instance_num` int DEFAULT NULL, + `max_worker_count` int DEFAULT NULL, + `min_cpu_cores` double NOT NULL, + `min_disk_space` double NOT NULL, + `min_memory_space` double NOT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `processor_info` varchar(255) DEFAULT NULL, + `processor_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `tag` varchar(255) DEFAULT NULL, + `task_retry_num` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_job_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for oms_lock +-- ---------------------------- +DROP TABLE IF EXISTS `oms_lock`; +CREATE TABLE `oms_lock` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lock_name` varchar(255) DEFAULT NULL, + `max_lock_time` bigint DEFAULT NULL, + `ownerip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_oms_lock` (`lock_name`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for server_info +-- ---------------------------- +DROP TABLE IF EXISTS `server_info`; +CREATE TABLE `server_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `ip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_server_info` (`ip`), + KEY `idx01_server_info` (`gmt_modified`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for user_info +-- ---------------------------- +DROP TABLE IF EXISTS `user_info`; +CREATE TABLE `user_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `email` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `phone` varchar(255) DEFAULT NULL, + `username` varchar(255) DEFAULT NULL, + `web_hook` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `uidx01_user_info` (`username`), + KEY `uidx02_user_info` (`email`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_info`; +CREATE TABLE `workflow_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lifecycle` varchar(255) DEFAULT NULL, + `max_wf_instance_num` int DEFAULT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `pedag` longtext, + `status` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + `wf_description` varchar(255) DEFAULT NULL, + `wf_name` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_instance_info`; +CREATE TABLE `workflow_instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `dag` longtext, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `parent_wf_instance_id` bigint DEFAULT NULL, + `result` longtext, + `status` int DEFAULT NULL, + `wf_context` longtext, + `wf_init_params` longtext, + `wf_instance_id` bigint DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_wf_instance` (`wf_instance_id`), + KEY `idx01_wf_instance` (`workflow_id`,`status`,`app_id`,`expected_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_node_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_node_info`; +CREATE TABLE `workflow_node_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint NOT NULL, + `enable` bit(1) NOT NULL, + `extra` longtext, + `gmt_create` datetime(6) NOT NULL, + `gmt_modified` datetime(6) NOT NULL, + `job_id` bigint DEFAULT NULL, + `node_name` varchar(255) DEFAULT NULL, + `node_params` longtext, + `skip_when_failed` bit(1) NOT NULL, + `type` int DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_node_info` (`workflow_id`,`gmt_create`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/others/sql/schema/powerjob_mysql_5.0.1.sql b/others/sql/schema/powerjob_mysql_5.0.1.sql new file mode 100644 index 00000000..da04575c --- /dev/null +++ b/others/sql/schema/powerjob_mysql_5.0.1.sql @@ -0,0 +1,323 @@ +/* + Navicat Premium Data Transfer + + Source Server : Local@3306 + Source Server Type : MySQL + Source Server Version : 80300 (8.3.0) + Source Host : localhost:3306 + Source Schema : powerjob5 + + Target Server Type : MySQL + Target Server Version : 80300 (8.3.0) + File Encoding : 65001 + + Date: 16/03/2024 22:07:31 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for app_info +-- ---------------------------- +DROP TABLE IF EXISTS `app_info`; +CREATE TABLE `app_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_name` varchar(255) DEFAULT NULL, + `creator` bigint DEFAULT NULL, + `current_server` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `modifier` bigint DEFAULT NULL, + `namespace_id` bigint DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `tags` varchar(255) DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_app_info` (`app_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for container_info +-- ---------------------------- +DROP TABLE IF EXISTS `container_info`; +CREATE TABLE `container_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `container_name` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `last_deploy_time` datetime(6) DEFAULT NULL, + `source_info` varchar(255) DEFAULT NULL, + `source_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `version` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_container_info` (`app_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `instance_info`; +CREATE TABLE `instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_id` bigint DEFAULT NULL, + `instance_params` longtext, + `job_id` bigint DEFAULT NULL, + `job_params` longtext, + `last_report_time` bigint DEFAULT NULL, + `result` longtext, + `running_times` bigint DEFAULT NULL, + `status` int DEFAULT NULL, + `task_tracker_address` varchar(255) DEFAULT NULL, + `type` int DEFAULT NULL, + `wf_instance_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_instance_info` (`job_id`,`status`), + KEY `idx02_instance_info` (`app_id`,`status`), + KEY `idx03_instance_info` (`instance_id`,`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for job_info +-- ---------------------------- +DROP TABLE IF EXISTS `job_info`; +CREATE TABLE `job_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `advanced_runtime_config` varchar(255) DEFAULT NULL, + `alarm_config` varchar(255) DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `concurrency` int DEFAULT NULL, + `designated_workers` varchar(255) DEFAULT NULL, + `dispatch_strategy` int DEFAULT NULL, + `dispatch_strategy_config` varchar(255) DEFAULT NULL, + `execute_type` int DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_retry_num` int DEFAULT NULL, + `instance_time_limit` bigint DEFAULT NULL, + `job_description` varchar(255) DEFAULT NULL, + `job_name` varchar(255) DEFAULT NULL, + `job_params` longtext, + `lifecycle` varchar(255) DEFAULT NULL, + `log_config` varchar(255) DEFAULT NULL, + `max_instance_num` int DEFAULT NULL, + `max_worker_count` int DEFAULT NULL, + `min_cpu_cores` double NOT NULL, + `min_disk_space` double NOT NULL, + `min_memory_space` double NOT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `processor_info` varchar(255) DEFAULT NULL, + `processor_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `tag` varchar(255) DEFAULT NULL, + `task_retry_num` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_job_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for namespace +-- ---------------------------- +DROP TABLE IF EXISTS `namespace`; +CREATE TABLE `namespace` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `code` varchar(255) DEFAULT NULL, + `creator` bigint DEFAULT NULL, + `dept` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `modifier` bigint DEFAULT NULL, + `name` varchar(255) DEFAULT NULL, + `status` int DEFAULT NULL, + `tags` varchar(255) DEFAULT NULL, + `token` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_namespace` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for oms_lock +-- ---------------------------- +DROP TABLE IF EXISTS `oms_lock`; +CREATE TABLE `oms_lock` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lock_name` varchar(255) DEFAULT NULL, + `max_lock_time` bigint DEFAULT NULL, + `ownerip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_oms_lock` (`lock_name`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for pwjb_user_info +-- ---------------------------- +DROP TABLE IF EXISTS `pwjb_user_info`; +CREATE TABLE `pwjb_user_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `username` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_username` (`username`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for server_info +-- ---------------------------- +DROP TABLE IF EXISTS `server_info`; +CREATE TABLE `server_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `ip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_server_info` (`ip`), + KEY `idx01_server_info` (`gmt_modified`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for sundry +-- ---------------------------- +DROP TABLE IF EXISTS `sundry`; +CREATE TABLE `sundry` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `content` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `pkey` varchar(255) DEFAULT NULL, + `skey` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_sundry` (`pkey`,`skey`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for user_info +-- ---------------------------- +DROP TABLE IF EXISTS `user_info`; +CREATE TABLE `user_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `account_type` varchar(255) DEFAULT NULL, + `email` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `nick` varchar(255) DEFAULT NULL, + `origin_username` varchar(255) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `phone` varchar(255) DEFAULT NULL, + `status` int DEFAULT NULL, + `token_login_verify_info` varchar(255) DEFAULT NULL, + `username` varchar(255) DEFAULT NULL, + `web_hook` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_user_name` (`username`), + KEY `uidx02_user_info` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for user_role +-- ---------------------------- +DROP TABLE IF EXISTS `user_role`; +CREATE TABLE `user_role` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `role` int DEFAULT NULL, + `scope` int DEFAULT NULL, + `target` bigint DEFAULT NULL, + `user_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `uidx01_user_id` (`user_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_info`; +CREATE TABLE `workflow_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lifecycle` varchar(255) DEFAULT NULL, + `max_wf_instance_num` int DEFAULT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `pedag` longtext, + `status` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + `wf_description` varchar(255) DEFAULT NULL, + `wf_name` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_instance_info`; +CREATE TABLE `workflow_instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `dag` longtext, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `parent_wf_instance_id` bigint DEFAULT NULL, + `result` longtext, + `status` int DEFAULT NULL, + `wf_context` longtext, + `wf_init_params` longtext, + `wf_instance_id` bigint DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_wf_instance` (`wf_instance_id`), + KEY `idx01_wf_instance` (`workflow_id`,`status`,`app_id`,`expected_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_node_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_node_info`; +CREATE TABLE `workflow_node_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint NOT NULL, + `enable` bit(1) NOT NULL, + `extra` longtext, + `gmt_create` datetime(6) NOT NULL, + `gmt_modified` datetime(6) NOT NULL, + `job_id` bigint DEFAULT NULL, + `node_name` varchar(255) DEFAULT NULL, + `node_params` longtext, + `skip_when_failed` bit(1) NOT NULL, + `type` int DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_node_info` (`workflow_id`,`gmt_create`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/others/sql/schema/powerjob_mysql_5.1.0.sql b/others/sql/schema/powerjob_mysql_5.1.0.sql new file mode 100644 index 00000000..0d594a8c --- /dev/null +++ b/others/sql/schema/powerjob_mysql_5.1.0.sql @@ -0,0 +1,323 @@ +/* + Navicat Premium Data Transfer + + Source Server : Local@3306 + Source Server Type : MySQL + Source Server Version : 80300 (8.3.0) + Source Host : localhost:3306 + Source Schema : powerjob5 + + Target Server Type : MySQL + Target Server Version : 80300 (8.3.0) + File Encoding : 65001 + + Date: 11/08/2024 23:23:30 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for app_info +-- ---------------------------- +DROP TABLE IF EXISTS `app_info`; +CREATE TABLE `app_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_name` varchar(255) DEFAULT NULL, + `creator` bigint DEFAULT NULL, + `current_server` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `modifier` bigint DEFAULT NULL, + `namespace_id` bigint DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `tags` varchar(255) DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_app_info` (`app_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for container_info +-- ---------------------------- +DROP TABLE IF EXISTS `container_info`; +CREATE TABLE `container_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `container_name` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `last_deploy_time` datetime(6) DEFAULT NULL, + `source_info` varchar(255) DEFAULT NULL, + `source_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `version` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_container_info` (`app_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `instance_info`; +CREATE TABLE `instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_id` bigint DEFAULT NULL, + `instance_params` longtext, + `job_id` bigint DEFAULT NULL, + `job_params` longtext, + `last_report_time` bigint DEFAULT NULL, + `result` longtext, + `running_times` bigint DEFAULT NULL, + `status` int DEFAULT NULL, + `task_tracker_address` varchar(255) DEFAULT NULL, + `type` int DEFAULT NULL, + `wf_instance_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_instance_info` (`job_id`,`status`), + KEY `idx02_instance_info` (`app_id`,`status`), + KEY `idx03_instance_info` (`instance_id`,`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for job_info +-- ---------------------------- +DROP TABLE IF EXISTS `job_info`; +CREATE TABLE `job_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `advanced_runtime_config` varchar(255) DEFAULT NULL, + `alarm_config` varchar(255) DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `concurrency` int DEFAULT NULL, + `designated_workers` varchar(255) DEFAULT NULL, + `dispatch_strategy` int DEFAULT NULL, + `dispatch_strategy_config` varchar(255) DEFAULT NULL, + `execute_type` int DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `instance_retry_num` int DEFAULT NULL, + `instance_time_limit` bigint DEFAULT NULL, + `job_description` varchar(255) DEFAULT NULL, + `job_name` varchar(255) DEFAULT NULL, + `job_params` longtext, + `lifecycle` varchar(255) DEFAULT NULL, + `log_config` varchar(255) DEFAULT NULL, + `max_instance_num` int DEFAULT NULL, + `max_worker_count` int DEFAULT NULL, + `min_cpu_cores` double NOT NULL, + `min_disk_space` double NOT NULL, + `min_memory_space` double NOT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `processor_info` varchar(255) DEFAULT NULL, + `processor_type` int DEFAULT NULL, + `status` int DEFAULT NULL, + `tag` varchar(255) DEFAULT NULL, + `task_retry_num` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_job_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for namespace +-- ---------------------------- +DROP TABLE IF EXISTS `namespace`; +CREATE TABLE `namespace` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `code` varchar(255) DEFAULT NULL, + `creator` bigint DEFAULT NULL, + `dept` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `modifier` bigint DEFAULT NULL, + `name` varchar(255) DEFAULT NULL, + `status` int DEFAULT NULL, + `tags` varchar(255) DEFAULT NULL, + `token` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_namespace` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for oms_lock +-- ---------------------------- +DROP TABLE IF EXISTS `oms_lock`; +CREATE TABLE `oms_lock` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lock_name` varchar(255) DEFAULT NULL, + `max_lock_time` bigint DEFAULT NULL, + `ownerip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_oms_lock` (`lock_name`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for pwjb_user_info +-- ---------------------------- +DROP TABLE IF EXISTS `pwjb_user_info`; +CREATE TABLE `pwjb_user_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `username` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_username` (`username`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for server_info +-- ---------------------------- +DROP TABLE IF EXISTS `server_info`; +CREATE TABLE `server_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `ip` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_server_info` (`ip`), + KEY `idx01_server_info` (`gmt_modified`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for sundry +-- ---------------------------- +DROP TABLE IF EXISTS `sundry`; +CREATE TABLE `sundry` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `content` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `pkey` varchar(255) DEFAULT NULL, + `skey` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_sundry` (`pkey`,`skey`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for user_info +-- ---------------------------- +DROP TABLE IF EXISTS `user_info`; +CREATE TABLE `user_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `account_type` varchar(255) DEFAULT NULL, + `email` varchar(255) DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `nick` varchar(255) DEFAULT NULL, + `origin_username` varchar(255) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `phone` varchar(255) DEFAULT NULL, + `status` int DEFAULT NULL, + `token_login_verify_info` varchar(255) DEFAULT NULL, + `username` varchar(255) DEFAULT NULL, + `web_hook` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_user_name` (`username`), + KEY `uidx02_user_info` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for user_role +-- ---------------------------- +DROP TABLE IF EXISTS `user_role`; +CREATE TABLE `user_role` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `role` int DEFAULT NULL, + `scope` int DEFAULT NULL, + `target` bigint DEFAULT NULL, + `user_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `uidx01_user_id` (`user_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_info`; +CREATE TABLE `workflow_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint DEFAULT NULL, + `extra` varchar(255) DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `lifecycle` varchar(255) DEFAULT NULL, + `max_wf_instance_num` int DEFAULT NULL, + `next_trigger_time` bigint DEFAULT NULL, + `notify_user_ids` varchar(255) DEFAULT NULL, + `pedag` longtext, + `status` int DEFAULT NULL, + `time_expression` varchar(255) DEFAULT NULL, + `time_expression_type` int DEFAULT NULL, + `wf_description` varchar(255) DEFAULT NULL, + `wf_name` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_info` (`app_id`,`status`,`time_expression_type`,`next_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_instance_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_instance_info`; +CREATE TABLE `workflow_instance_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `actual_trigger_time` bigint DEFAULT NULL, + `app_id` bigint DEFAULT NULL, + `dag` longtext, + `expected_trigger_time` bigint DEFAULT NULL, + `finished_time` bigint DEFAULT NULL, + `gmt_create` datetime(6) DEFAULT NULL, + `gmt_modified` datetime(6) DEFAULT NULL, + `parent_wf_instance_id` bigint DEFAULT NULL, + `result` longtext, + `status` int DEFAULT NULL, + `wf_context` longtext, + `wf_init_params` longtext, + `wf_instance_id` bigint DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uidx01_wf_instance` (`wf_instance_id`), + KEY `idx01_wf_instance` (`workflow_id`,`status`,`app_id`,`expected_trigger_time`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Table structure for workflow_node_info +-- ---------------------------- +DROP TABLE IF EXISTS `workflow_node_info`; +CREATE TABLE `workflow_node_info` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `app_id` bigint NOT NULL, + `enable` bit(1) NOT NULL, + `extra` longtext, + `gmt_create` datetime(6) NOT NULL, + `gmt_modified` datetime(6) NOT NULL, + `job_id` bigint DEFAULT NULL, + `node_name` varchar(255) DEFAULT NULL, + `node_params` longtext, + `skip_when_failed` bit(1) NOT NULL, + `type` int DEFAULT NULL, + `workflow_id` bigint DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx01_workflow_node_info` (`workflow_id`,`gmt_create`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/others/sql/upgrade/README.md b/others/sql/upgrade/README.md new file mode 100644 index 00000000..ea511137 --- /dev/null +++ b/others/sql/upgrade/README.md @@ -0,0 +1,7 @@ +由于存在不同数据库、不同版本的升级,官方能给出的 upgrade SQL 相对有限,大家可参考以下方式自行生成升级 SQL: + +- 【官方脚本】参考官方每个版本的数据库全库建表文件(项目 others - sql - schema),自行进行字段 DIFF + +- 【自己动手版】导出当前您的 powerjob 数据库表结构,同时创建一个测试库,让 5.x 版本的 server 直连该测试库,自动建表。分别拿到两个版本的表结构 SQL 后,借用工具生产 update SQL 即可(navigate 等数据库管理软件均支持结构对比) + +参考文档:https://www.yuque.com/powerjob/guidence/upgrade \ No newline at end of file diff --git a/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/service/impl/AppInfoServiceImpl.java b/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/service/impl/AppInfoServiceImpl.java index facc8839..fc7dacfe 100644 --- a/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/service/impl/AppInfoServiceImpl.java +++ b/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/service/impl/AppInfoServiceImpl.java @@ -49,7 +49,9 @@ public class AppInfoServiceImpl implements AppInfoService { @Override public Optional findById(Long appId, boolean useCache) { if (!useCache) { - return appInfoRepository.findById(appId); + Optional appInfoOpt = appInfoRepository.findById(appId); + appInfoOpt.ifPresent(appInfo -> appId2AppInfoDO.put(appId, appInfo)); + return appInfoOpt; } try { AppInfoDO appInfoDO = appId2AppInfoDO.get(appId, () -> {