Files

22 lines
869 B
SQL

CREATE TABLE IF NOT EXISTS mq_task_controls (
tenant_id TEXT NOT NULL,
command_id TEXT NOT NULL,
tenant_key TEXT NOT NULL,
task_id TEXT NOT NULL,
expected_revision INTEGER NOT NULL,
action TEXT NOT NULL,
active_call_policy TEXT NOT NULL,
state TEXT NOT NULL CHECK (state IN ('pending', 'applied')),
PRIMARY KEY (tenant_id, command_id),
FOREIGN KEY (tenant_id, command_id) REFERENCES inbox(tenant_id, command_id)
);
CREATE TABLE IF NOT EXISTS mq_task_control_targets (
tenant_id TEXT NOT NULL,
command_id TEXT NOT NULL,
execution_id TEXT NOT NULL REFERENCES tasks(execution_id),
original_status TEXT NOT NULL,
applied INTEGER NOT NULL CHECK (applied IN (0,1)),
PRIMARY KEY (tenant_id, command_id, execution_id),
FOREIGN KEY (tenant_id, command_id) REFERENCES mq_task_controls(tenant_id, command_id)
);