mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-10-26 00:04:52 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			38 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| UPDATE workflow_definition_entity
 | |
| SET json = JSON_REMOVE(json, '$.type')
 | |
| WHERE JSON_EXTRACT(json, '$.type') IS NOT NULL;
 | |
| 
 | |
| -- Add status column to WorkflowInstances and WorkflowInstanceStates
 | |
| -- entityLink is generated through variables->global_relatedEntity due to the following reasons:
 | |
| -- 1. Flowable shares state through variables that get written into the database and we are persisting those
 | |
| -- 2. We are using a namespace system to define from which "Node" the variable should be fetched
 | |
| -- 3. We are saving the entityLink that triggers the workflow on the `relatedEntity` variable, within the `global` namespace
 | |
| ALTER TABLE workflow_instance_time_series ADD COLUMN status VARCHAR(20) GENERATED ALWAYS AS (json ->> '$.status') NOT NULL;
 | |
| ALTER TABLE workflow_instance_time_series ADD COLUMN exceptionStacktrace TEXT GENERATED ALWAYS AS (json ->> '$.exception');
 | |
| ALTER TABLE workflow_instance_time_series ADD COLUMN entityLink VARCHAR(255) GENERATED ALWAYS AS (json ->> '$.variables.global_relatedEntity');
 | |
| 
 | |
| ALTER TABLE workflow_instance_state_time_series ADD COLUMN status VARCHAR(20) GENERATED ALWAYS AS (json ->> '$.status') NOT NULL;
 | |
| ALTER TABLE workflow_instance_state_time_series ADD COLUMN exceptionStacktrace TEXT GENERATED ALWAYS AS (json ->> '$.exception');
 | |
| 
 | |
| -- Query Cost History Time Series
 | |
| CREATE TABLE query_cost_time_series (
 | |
|   id varchar(36) GENERATED ALWAYS AS (json_unquote(json_extract(json,'$.id'))) VIRTUAL NOT NULL,
 | |
|   cost float GENERATED ALWAYS AS (json_unquote(json_extract(json,'$.cost'))) VIRTUAL NOT NULL,
 | |
|   count int GENERATED ALWAYS AS (json_unquote(json_extract(json,'$.count'))) VIRTUAL NULL,
 | |
|   timestamp bigint unsigned GENERATED ALWAYS AS (json_unquote(json_extract(json,'$.timestamp'))) VIRTUAL NOT NULL,
 | |
|   jsonSchema varchar(256) NOT NULL,
 | |
|   json json NOT NULL,
 | |
|   entityFQNHash varchar(768) CHARACTER SET ascii COLLATE ascii_bin DEFAULT NULL,
 | |
|   CONSTRAINT query_cost_unique_constraint UNIQUE (timestamp,entityFQNHash),
 | |
|   INDEX (id),
 | |
|   INDEX (id, timestamp)
 | |
| 
 | |
| ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 | |
| 
 | |
| UPDATE workflow_definition_entity
 | |
| SET json = JSON_SET(json, '$.trigger.type', 'eventBasedEntity')
 | |
| WHERE JSON_EXTRACT(json, '$.trigger.type') in ('eventBasedEntityTrigger', 'eventBasedEntityWorkflow');
 | |
| 
 | |
| UPDATE workflow_definition_entity
 | |
| SET json = JSON_SET(json, '$.trigger.type', 'periodicBatchEntity')
 | |
| WHERE JSON_EXTRACT(json, '$.trigger.type') in ('periodicBatchEntityTrigger', 'periodicBatchEntityWorkflow'); | 
