19 lines
911 B
PL/PgSQL
19 lines
911 B
PL/PgSQL
BEGIN;
|
|
SET ROLE capability_role;
|
|
ALTER TABLE capability.health ADD COLUMN IF NOT EXISTS semantic_version INTEGER;
|
|
ALTER TABLE capability.health ADD COLUMN IF NOT EXISTS observed_at_unix_millis BIGINT;
|
|
UPDATE capability.health SET semantic_version = 1 WHERE semantic_version IS NULL;
|
|
ALTER TABLE capability.health ALTER COLUMN semantic_version SET NOT NULL;
|
|
ALTER TABLE capability.health DROP CONSTRAINT IF EXISTS capability_health_semantic_shape;
|
|
ALTER TABLE capability.health ADD CONSTRAINT capability_health_semantic_shape CHECK ((semantic_version = 1 AND observed_at_unix_millis IS NULL) OR (semantic_version = 2 AND observed_at_unix_millis > 0));
|
|
CREATE TABLE IF NOT EXISTS capability.health_projection (
|
|
capability_id TEXT PRIMARY KEY,
|
|
state TEXT NOT NULL,
|
|
reason TEXT NOT NULL,
|
|
revision BIGINT NOT NULL,
|
|
semantic_version INTEGER NOT NULL,
|
|
observed_at_unix_millis BIGINT
|
|
);
|
|
RESET ROLE;
|
|
COMMIT;
|