GNU bug report logs - #32879
[PATCH] database: Add builds only if one of their outputs is new.

Previous Next

Package: guix-patches;

Reported by: Clément Lassieur <clement <at> lassieur.org>

Date: Sat, 29 Sep 2018 20:37:02 UTC

Severity: normal

Tags: patch

Done: Clément Lassieur <clement <at> lassieur.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Clément Lassieur <clement <at> lassieur.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 32879 <at> debbugs.gnu.org
Subject: [bug#32879] [PATCH] database: Add builds only if one of their outputs is new.
Date: Mon, 01 Oct 2018 11:09:59 +0200
Clément Lassieur <clement <at> lassieur.org> writes:

> Ludovic Courtès <ludo <at> gnu.org> writes:
>
>> Hello Clément,
>>
>> Clément Lassieur <clement <at> lassieur.org> skribis:
>>
>>> * Makefile.am (dist_sql_DATA): Add 'src/sql/upgrade-4.sql'.
>>> * src/cuirass/database.scm (db-add-output): New procedure.
>>> (db-add-build): Call DB-ADD-OUTPUT, rollback the transaction and return #f if
>>> DB-ADD-OUTPUT returned an empty list.
>>> * src/schema.sql (Outputs): Set 'path' as primary key, instead of 'derivation,
>>> name'.
>>> * src/sql/upgrade-4.sql: New file with SQL queries to upgrade the database.
>>> * tests/database.scm (make-dummy-build): Use the #:OUTPUTS key.  Get default
>>> OUTPUTS to depend on DRV.
>>> ("db-add-build-with-fixed-output"): New test.
>>
>> What’s the rationale?  I suppose having a simpler primary key for
>> ‘Outputs’ might help performance?
>
> There is a slight performance and db size gain but the primary reason is
> to have a better idea of Cuirass' load when looking at the pending
> builds.  There will be less (no?) 'fake' builds.  The idea is that all
> builds should be real builds.

Also, it would allow to be notified when someone pushes on master a
commit that triggers too many builds.




This bug report was last modified 6 years and 293 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.