guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#32879] [PATCH] database: Add builds only if one of their outputs is


From: Clément Lassieur
Subject: [bug#32879] [PATCH] database: Add builds only if one of their outputs is new.
Date: Mon, 01 Oct 2018 11:09:59 +0200
User-agent: mu4e 1.0; emacs 26.1

Clément Lassieur <address@hidden> writes:

> Ludovic Courtès <address@hidden> writes:
>
>> Hello Clément,
>>
>> Clément Lassieur <address@hidden> 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.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]