aboutsummaryrefslogtreecommitdiff
path: root/guix-data-service/model
Commit message (Collapse)AuthorAge
* Try to further speed up inserting missing derivation source filesChristopher Baines2022-03-02
| | | | | | | Switch from using a recursive query to doing a breath first search through the graph of derivations, as I think PostgreSQL wasn't doing a great job of planning the recursive queries (it would overestimate the rows involved, and prefer sequential scans for the derivation_outputs table).
* Speed up the finding of missing sourcesChristopher Baines2022-03-01
| | | | Use larger batches and more efficient duplicate deletion.
* Support querying package derivation outputs without the narsChristopher Baines2022-01-31
| | | | Since this speeds up the response if you don't need the nar information.
* Make the revision derivation counts numbersChristopher Baines2022-01-22
|
* Process derivations in chunksChristopher Baines2022-01-14
| | | | Which should reduce the peak memory usage.
* Rename chunk-map! to chunk-for-each!Christopher Baines2022-01-14
| | | | As that better reflects what it does.
* Re-write insert-derivation-inputs in a more memory efficient manorChristopher Baines2022-01-12
| | | | | | | | | | Previously it would compute a long list of strings, potentially more than 100,000 elements long, then split this string up and insert it in chunks. Only then could memory be freed. This new approach builds the strings in batches for the insertion query, then moves on to the next batch. This should mean that more memory can be freed and reused along the way.
* Use a bigger start size for the hash tableChristopher Baines2021-10-03
| | | | This might help when there's lots of derivations to insert.
* Insert derivations in chunksChristopher Baines2021-10-03
| | | | To avoid making a very large query when inserting lots of derivations.
* Log the time to read missing derivations from the storeChristopher Baines2021-10-03
|
* Select existing derivations in chunksChristopher Baines2021-10-03
| | | | To avoid one massive query.
* Insert derivation inputs in chunksChristopher Baines2021-10-03
| | | | To avoid one massive query.
* Handle the case where there are no missing file namesChristopher Baines2021-09-25
| | | | In update-derivation-ids-hash-table!.
* Optimise inserting derivation inputsChristopher Baines2021-09-24
| | | | | Rather than querying for the output ids one by one and then running an insert query for each derivation, perform the task with a single insert query.
* Neaten up formatting in select-derivation-output-idChristopher Baines2021-09-24
|
* Replace derivation-file-names->vhashChristopher Baines2021-09-24
| | | | | | Rather than creating vhashes, just update the hash table that is used as a cache, and query that. This should speed things up and reduce memory usage when loading derivations.
* Speed up inserting missing derivation sourcesChristopher Baines2021-09-24
| | | | | | Split the recursive part of the query from the non-recursive part, since PostgreSQL doesn't do a great job of estimating the number of rows which will come back from the recursive part, and thus generates a bad plan.
* Fix the select-source-files-missing-nars queryChristopher Baines2021-09-16
| | | | Previously, the VALUES list wasn't being generated properly.
* Make sure to add missing source file nars when inserting derivationsChristopher Baines2021-09-14
| | | | | Source file nars weren't always recorded, so this will help backfill that data (which enables providing substitutes for those derivations).
* Handle #f package descriptionsChristopher Baines2021-08-09
| | | | One was added in e81cf4e79a6e297db0ae2a9c39eab495e7e204f0.
* Track package replacementsChristopher Baines2021-07-11
| | | | | | Start at least looking for package replacements, and storing the details (particularly the derivation). I'm looking at doing this so that build servers using the Guix Data Service can build these derivations.
* Remove redundant derivation-sources callChristopher Baines2021-06-09
|
* Use derivations.system_id in select-builds-with-contextChristopher Baines2021-06-09
| | | | As that table is always included in the query.
* Fix incorrect query parameters in a couple of builds queriesChristopher Baines2021-05-12
| | | | The parameters must be strings rather than numbers.
* Fix query typo in branches-by-package-versionChristopher Baines2021-05-12
|
* Change data handling when comparing derivationsLuciana Lima Brito2021-04-27
| | | | | | | | | | comparison.scm: return query data for derivation comparison as an alist, instead of list. html.scm: Access derivation differences data using assq-ref. controller.scm: remove mapping for outputs/inputs/sources. utils.scm: add group-to-alist/vector function. Signed-off-by: Christopher Baines <mail@cbaines.net>
* Reformat a couple of package related queriesChristopher Baines2021-04-24
|
* Actually add the system moduleChristopher Baines2021-04-23
|
* Fetch the list of system values from the databaseChristopher Baines2021-04-23
| | | | This removes the need to hardcode some values in the code.
* Create a table for systemsChristopher Baines2021-04-23
| | | | | | | | And use it for the systems in the derivations and package derivations tables. The primary motivation here is to allow quickly working out what systems the database contains, and having a small table with just the right data seems a good way to do that.
* Support querying for outputs that have had successful buildsChristopher Baines2021-04-10
|
* Have branches-by-package-version look at latest processed revisionChristopher Baines2021-03-15
| | | | | This means branches aren't omitted if the latest commit hasn't been processed yet.
* Add a /package/NAME pageChristopher Baines2021-03-14
| | | | | | This might be useful for working out when a non-master branch contains a newer version of a package, or someone has sent in a patch for a newer version already.
* Add page for looking at the history of a system testChristopher Baines2021-03-14
| | | | This should be useful for looking at when system tests break.
* Add powerpc64le-linux as a supported systemChristopher Baines2021-02-12
| | | | | This should not be necessary, but currently the database isn't used to find out the valid system values.
* Support more query parameters on the /builds pageChristopher Baines2021-02-08
|
* Fix a squee update issue with the package reproducibility pageChristopher Baines2021-02-06
|
* Fix comparing by datetimeChristopher Baines2021-02-05
| | | | When the latest revisions haven't been processed successfully yet.
* Adjust all-branches-with-most-recent-commit for recent changesChristopher Baines2021-02-03
| | | | Look at the job succeeded_at, rather than the guix_revisions.id field.
* Update most-recent-commits-for-branch to handle data availabilityChristopher Baines2021-02-03
|
* Fix latest processed commit for branchChristopher Baines2021-02-03
|
* Better handle retries for jobsChristopher Baines2021-02-03
| | | | | This was broken when the guix_revisions entry started being added before the final commit.
* Store channel instance derivations in a separate transactionChristopher Baines2021-02-02
| | | | | | This means that these derivations are stored, even if a later part of the process fails. Having the channel instance derivations stored might help work out why the failure occurred, or better display information about it.
* Remove store_path from select-guix-revision-for-branch-and-datetimeChristopher Baines2021-02-02
| | | | As I want to remove the field from the database.
* Show finished builds on the fixed output package derivations pageChristopher Baines2021-02-02
| | | | Rather than scheduled builds as well, as that's not useful information.
* Adjust for the introduction of (guix narinfo)Christopher Baines2021-02-01
|
* Fix a Squee null handling issue with latest fixed output derivationsChristopher Baines2021-01-14
|
* Add missing build server build ids to various queriesChristopher Baines2021-01-03
|
* Fix various issues linking to buildsChristopher Baines2021-01-03
|
* Fix squee compatability issues for serving derivationsChristopher Baines2021-01-02
|