22 lines
931 B
SQL
22 lines
931 B
SQL
ALTER TABLE assessor_import_processing_runs
|
|
ADD CONSTRAINT assessor_processing_runs_identity_unique UNIQUE (id, project_id, artifact_id);
|
|
|
|
CREATE TABLE assessor_gpo_backup_instances (
|
|
id text PRIMARY KEY CHECK (btrim(id) <> ''),
|
|
project_id text NOT NULL,
|
|
artifact_id text NOT NULL,
|
|
processing_run_id text NOT NULL,
|
|
instance_id text NOT NULL CHECK (btrim(instance_id) <> ''),
|
|
created_at timestamptz NOT NULL,
|
|
data jsonb NOT NULL CHECK (jsonb_typeof(data) = 'object'),
|
|
FOREIGN KEY (processing_run_id, project_id, artifact_id)
|
|
REFERENCES assessor_import_processing_runs(id, project_id, artifact_id) ON DELETE CASCADE,
|
|
UNIQUE (processing_run_id, instance_id)
|
|
);
|
|
|
|
CREATE INDEX assessor_gpo_backup_instances_project_idx
|
|
ON assessor_gpo_backup_instances(project_id, created_at, id);
|
|
|
|
CREATE INDEX assessor_gpo_backup_instances_artifact_idx
|
|
ON assessor_gpo_backup_instances(artifact_id, processing_run_id, id);
|