services/migration_service/migration_files/1_create_tables.sql (74 lines of code) (raw):
-- +goose Up
-- +goose StatementBegin
SELECT 'up SQL query';
CREATE TABLE IF NOT EXISTS flows_v3 (
flow_id VARCHAR(255) PRIMARY KEY,
user_name VARCHAR(255),
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB
);
CREATE TABLE IF NOT EXISTS runs_v3 (
flow_id VARCHAR(255) NOT NULL,
run_number SERIAL NOT NULL,
user_name VARCHAR(255),
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB,
PRIMARY KEY(flow_id, run_number),
FOREIGN KEY(flow_id) REFERENCES flows_v3 (flow_id)
);
CREATE TABLE IF NOT EXISTS steps_v3 (
flow_id VARCHAR(255) NOT NULL,
run_number BIGINT NOT NULL,
step_name VARCHAR(255) NOT NULL,
user_name VARCHAR(255),
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB,
PRIMARY KEY(flow_id, run_number, step_name),
FOREIGN KEY(flow_id, run_number) REFERENCES runs_v3 (flow_id, run_number)
);
CREATE TABLE IF NOT EXISTS tasks_v3 (
flow_id VARCHAR(255) NOT NULL,
run_number BIGINT NOT NULL,
step_name VARCHAR(255) NOT NULL,
task_id BIGSERIAL PRIMARY KEY,
user_name VARCHAR(255),
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB,
FOREIGN KEY(flow_id, run_number, step_name) REFERENCES steps_v3 (flow_id, run_number, step_name)
);
CREATE TABLE IF NOT EXISTS metadata_v3 (
flow_id VARCHAR(255),
run_number BIGINT NOT NULL,
step_name VARCHAR(255) NOT NULL,
task_id BIGINT NOT NULL,
id BIGSERIAL NOT NULL,
field_name VARCHAR(255) NOT NULL,
value TEXT NOT NULL,
type VARCHAR(255) NOT NULL,
user_name VARCHAR(255),
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB,
PRIMARY KEY(flow_id, run_number, step_name, task_id, field_name)
);
CREATE TABLE IF NOT EXISTS artifact_v3 (
flow_id VARCHAR(255) NOT NULL,
run_number BIGINT NOT NULL,
step_name VARCHAR(255) NOT NULL,
task_id BIGINT NOT NULL,
name VARCHAR(255) NOT NULL,
location VARCHAR(255) NOT NULL,
ds_type VARCHAR(255) NOT NULL,
sha VARCHAR(255),
type VARCHAR(255),
content_type VARCHAR(255),
user_name VARCHAR(255),
attempt_id SMALLINT NOT NULL,
ts_epoch BIGINT NOT NULL,
tags JSONB,
system_tags JSONB,
PRIMARY KEY(flow_id, run_number, step_name, task_id, attempt_id, name)
);
-- +goose StatementEnd
-- +goose Down
-- +goose StatementBegin
SELECT 'down SQL query';
-- +goose StatementEnd