GNU bug report logs -
#32190
Cuirass doesn't check if two subsequent jobs yield the same derivation
Previous Next
Full log
Message #29 received at 32190 <at> debbugs.gnu.org (full text, mbox):
I forgot:
Clément Lassieur <clement <at> lassieur.org> writes:
> Fixes <https://bugs.gnu.org/32190>.
>
> * Makefile.am (dist_sql_DATA): Add 'src/sql/upgrade-2.sql'.
> * src/cuirass/base.scm (evaluate): Don't add jobs to the Derivations table.
(build-packages): Add columns that were in the Derivations table before. Only
build the derivations that were successfully registered, that is, those that
didn't exist in the Builds table. Give a derivation instead of a build id to
DB-GET-BUILD. Compute the number of failed jobs based on the derivations that
were added to the table, instead of the jobs.
> * src/cuirass/database.scm (db-add-derivation, db-get-derivation): Remove
> exported procedures.
> (db-add-build): Catch SQLITE_CONSTRAINT_PRIMARYKEY error, which means that two
> jobs produced the same derivation, and return #f in that case. Add columns
[...]
And (in base.scm)
@@ -584,7 +587,7 @@ procedure is meant to be called at startup."
(((_ (#:path . (? string? outputs))) ...)
outputs))
outputs))
- (fail (- (length jobs) success)))
+ (fail (- (length derivations) success)))
(log-message "outputs:\n~a" (string-join outs "\n"))
(log-message "success: ~a, fail: ~a" success fail)
results))
This bug report was last modified 6 years and 358 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.