Move evaluation errors from evaluations to EvaluationErrors, a new table

DBIx likes to eagerly select all columns without a way to really tell
it so. Therefore, this splits this one large column in to its own
table.

I'd also like to make "jobsets" use this table too, but that is on hold
to stop the bleeding caused by the extreme amount of traffic this is
causing.
This commit is contained in:
Graham Christensen
2021-02-01 18:35:48 -05:00
parent aaf16d542c
commit f1e75c8bff
9 changed files with 196 additions and 27 deletions

View File

@ -437,13 +437,17 @@ create table SystemTypes (
maxConcurrent integer not null default 2
);
create table EvaluationErrors (
id serial primary key not null,
errorMsg text, -- error output from the evaluator
errorTime integer -- timestamp associated with errorMsg
);
create table JobsetEvals (
id serial primary key not null,
jobset_id integer not null,
errorMsg text, -- error output from the evaluator
errorTime integer, -- timestamp associated with errorMsg
evaluationerror_id integer,
timestamp integer not null, -- when this entry was added
checkoutTime integer not null, -- how long obtaining the inputs took (in seconds)
@ -471,7 +475,8 @@ create table JobsetEvals (
nixExprInput text, -- name of the jobsetInput containing the Nix or Guix expression
nixExprPath text, -- relative path of the Nix or Guix expression
foreign key (jobset_id) references Jobsets(id) on delete cascade
foreign key (jobset_id) references Jobsets(id) on delete cascade,
foreign key (evaluationerror_id) references EvaluationErrors(id) on delete set null
);