CREATE TABLE repo_prs (
repo_id BIGINT NOT NULL REFERENCES repos(repo_id) ON DELETE CASCADE,
pr_number INT,
created TIMESTAMP,
merged TIMESTAMP,
PRIMARY KEY(repo_id, pr_number)
);
CREATE TABLE pr_reviewers (
repo_id BIGINT NOT NULL,
pr_number INT NOT NULL,
reviewer_email VARCHAR(255) NOT NULL,
num_comments INT NOT NULL,
approved BOOL NOT NULL,
PRIMARY KEY(repo_id, pr_number, reviewer_email),
FOREIGN KEY (repo_id, pr_number)
REFERENCES repo_prs(repo_id, pr_number) ON DELETE CASCADE
);
It's missing foreign references from repo_id and pr_number from pr_reviewers to repo_prs.