Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DSIP-53][Dependent] Suggest add process lineage parsing for dependent task #16255

Closed
2 tasks done
Tracked by #14102
SbloodyS opened this issue Jul 2, 2024 · 0 comments · Fixed by #16288
Closed
2 tasks done
Tracked by #14102

[DSIP-53][Dependent] Suggest add process lineage parsing for dependent task #16255

SbloodyS opened this issue Jul 2, 2024 · 0 comments · Fixed by #16288
Assignees
Labels

Comments

@SbloodyS
Copy link
Member

SbloodyS commented Jul 2, 2024

Search before asking

  • I had searched in the DSIP and found no similar DSIP.

Motivation

The current dependency task data structure is complex, which is not conducive to lineage analysis. In order to improve the performance of lineage analysis, the extension of lineage application is increased.

Design Detail

  • Add table t_ds_process_lineage for storing process definition lineage.
  • Add lineage analysis parsing logic to the end of adding, deleting, modifying and checking dependent tasks.
  • Add batch initialization script for historical data.
  • Modify the workflow kinship code
CREATE TABLE `t_ds_process_lineage` (
  `id` int NOT NULL AUTO_INCREMENT,
  `process_definition_code` bigint NOT NULL,
  `process_definition_version` int NOT NULL,
  `task_deifnition_code` bigint NOT NULL,
  `task_definition_version` int NOT NULL,
  `dept_project_code` bigint NOT NULL COMMENT 'dependent project code',
  `dept_process_definition_code` bigint NOT NULL COMMENT 'dependent process definition code',
  `dept_task_definition_code` bigint NOT NULL COMMENT 'dependent task definition code',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create time',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'update time',
  PRIMARY KEY (`id`),
  KEY `idx_process_code_version` (`process_definition_code`,`process_definition_version`),
  KEY `idx_task_code_version` (`task_deifnition_code`,`task_definition_version`),
  KEY `idx_dept_code` (`dept_project_code`,`dept_process_definition_code`,`dept_task_definition_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Compatibility, Deprecation, and Migration Plan

No response

Test Plan

Add e2e test to ensure stability.

Code of Conduct

@SbloodyS SbloodyS added Waiting for reply Waiting for reply DSIP and removed Waiting for reply Waiting for reply labels Jul 2, 2024
@SbloodyS SbloodyS self-assigned this Jul 2, 2024
@SbloodyS SbloodyS changed the title [DSIP-][Dependent] Suggest add process lineage parsing for dependent task Jul 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 participant