76 lines
2 KiB
SQL
76 lines
2 KiB
SQL
CREATE TABLE commits (
|
|
hash TEXT NOT NULL PRIMARY KEY,
|
|
author TEXT NOT NULL,
|
|
author_date TEXT NOT NULL,
|
|
committer TEXT NOT NULL,
|
|
committer_date TEXT NOT NULL,
|
|
message TEXT NOT NULL,
|
|
reachable INT NOT NULL DEFAULT 0,
|
|
new INT NOT NULL DEFAULT 1
|
|
) STRICT;
|
|
|
|
CREATE TABLE commit_links (
|
|
child TEXT NOT NULL,
|
|
parent TEXT NOT NULL,
|
|
|
|
PRIMARY KEY (parent, child),
|
|
FOREIGN KEY (parent) REFERENCES commits (hash) ON DELETE CASCADE,
|
|
FOREIGN KEY (child) REFERENCES commits (hash) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE TABLE refs (
|
|
name TEXT NOT NULL PRIMARY KEY,
|
|
hash TEXT NOT NULL,
|
|
tracked INT NOT NULL DEFAULT 0,
|
|
|
|
FOREIGN KEY (hash) REFERENCES commits (hash) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE TABLE runs (
|
|
id TEXT NOT NULL PRIMARY KEY,
|
|
hash TEXT NOT NULL,
|
|
bench_method TEXT NOT NULL,
|
|
worker_name TEXT NOT NULL,
|
|
worker_info TEXT,
|
|
start TEXT NOT NULL,
|
|
end TEXT NOT NULL,
|
|
exit_code INT NOT NULL,
|
|
|
|
FOREIGN KEY (hash) REFERENCES commits (hash) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE TABLE run_measurements (
|
|
id TEXT NOT NULL,
|
|
metric TEXT NOT NULL,
|
|
value REAL NOT NULL,
|
|
stddev REAL,
|
|
unit TEXT,
|
|
direction INT,
|
|
|
|
PRIMARY KEY (id, metric),
|
|
FOREIGN KEY (id) REFERENCES runs (id) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE TABLE run_output (
|
|
id TEXT NOT NULL,
|
|
idx INT NOT NULL,
|
|
source INT NOT NULL,
|
|
text TEXT NOT NULL,
|
|
|
|
PRIMARY KEY (id, idx),
|
|
FOREIGN KEY (id) REFERENCES runs (id) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE TABLE queue (
|
|
hash TEXT NOT NULL PRIMARY KEY,
|
|
date TEXT NOT NULL,
|
|
priority INT NOT NULL DEFAULT 0,
|
|
|
|
FOREIGN KEY (hash) REFERENCES commits (hash) ON DELETE CASCADE
|
|
) STRICT;
|
|
|
|
CREATE INDEX idx_commit_links_parent_child
|
|
ON commit_links (parent, child);
|
|
|
|
CREATE INDEX idx_run_measurements_metric_id_value
|
|
ON run_measurements (metric, id, value);
|