aboutsummaryrefslogtreecommitdiff
path: root/guix-data-service/jobs
Commit message (Collapse)AuthorAge
* Vacuum the log parts table after deleting entries from itChristopher Baines2020-11-17
| | | | To help keep the number of dead tuples down.
* Vacuum the package derivations table after each jobChristopher Baines2020-11-17
| | | | | | | | As each job deletes lots of rows in the table, vacuum it to free up space for the next job. I don't think this is something to do widely, but I wanted to try it out for the tables which have a lot of churn.
* Improve the failed comparison pageChristopher Baines2020-10-23
|
* Split the jobs metric in to succeede, queued and failedChristopher Baines2020-10-09
| | | | Rather than just completed or not.
* Improve select-job-for-commitChristopher Baines2020-10-09
| | | | It now returns #f or a list, rather than the empty list or a nested list.
* Guard against errors when recording job stderr outputChristopher Baines2020-10-09
| | | | This might help at least handle errors when inserting data in to PostgreSQL.
* Use the git repository fetch with authentication valueChristopher Baines2020-10-07
|
* Better handle loading the (guix i18n) module in the inferiorChristopher Baines2020-09-26
| | | | Previously it would only be loaded if the (guix lint) module exists.
* Change the locale codeset representationChristopher Baines2020-09-26
| | | | | | | | | | | From the normalized one, to the one actually contained within glibc. Recent versions of glibc also contain symlinks linking the normalized codeset to the locales with the .UTF-8 ending, but older ones do not. Maybe handling codeset normalisation for queries would be good, but the locale values ending in .UTF-8 are more compatible and allow the code to be simplified. For querying, maybe there should be a locales table which handles different representations.
* Add some new metrics about load new revision jobsChristopher Baines2020-09-20
|
* Guard against null package metadata idsDanjela Lura2020-08-13
| | | | Signed-off-by: Christopher Baines <mail@cbaines.net>
* Update the package_metadata_tsvectors with new entriesDanjela Lura2020-08-12
| | | | Signed-off-by: Christopher Baines <mail@cbaines.net>
* Avoid problems with lint warnings for duplicate packagesChristopher Baines2020-08-09
| | | | | | Use the deduplicated list of packages when fetching lint warnings, to avoid duplicates. This was first seen in the following Guix commit 843344273c6a587b8e6c84d8406500fd64d8908a.
* Get the translated package synopsis and descriptions into the databaseDanjela Lura2020-06-19
| | | | Signed-off-by: Christopher Baines <mail@cbaines.net>
* Get the translated lint checker descriptions into the databaseDanjela Lura2020-06-07
| | | | Signed-off-by: Christopher Baines <mail@cbaines.net>
* Guard against strange derivations for packagesChristopher Baines2020-04-24
| | | | | Where the requested system doesn't match that of the returned derivation. This seems to happen for packages like dev86, wine and go.
* Actually load the (guix lint) module if it's availableChristopher Baines2020-04-20
|
* Adapt to the different inferior error handlingChristopher Baines2020-04-20
| | | | | | In recent versions of Guix on the Guix Data Service side, I don't think these are system-error's, but a different type. For compatibility, just catch any error.
* Improve detecting if the (guix lint) module is availableChristopher Baines2020-04-20
| | | | | Previously it would cause an error when it's not available, which is a bit unnecessary.
* Print out the system tests as the derivations are being computedChristopher Baines2020-04-07
| | | | This might help with debugging failures in the load jobs around this point.
* Guard against errors loading system testsChristopher Baines2020-04-07
|
* Guard against errors when inserting log dataChristopher Baines2020-04-07
| | | | | | PostgreSQL seems to be unhappy with some data, I guess because it gets a bit jumbled. Rather than failing the job, or getting stuck not inserting logs, try and capture the error, log the details, and then keep going.
* Pass #:store to checkers that support itChristopher Baines2020-03-24
| | | | | | The derivation checker currently opens a store connection on its own, but by passing the already open connection in, it won't have to do that, and hopefully this will make checking all the packages faster.
* Stop using package_versions_by_guix_revision_rangeChristopher Baines2020-03-24
| | | | It's been replaced by the package_derivations_by_guix_revision_range table.
* Generate and store system test derivations for all supported systemsChristopher Baines2020-03-20
| | | | | | | Rather than just the native system. I'm not quite sure of the value here, as I guess system tests should behave the same regardless of the way the software is compiled, but this seems like it could be useful, and being explicit about the system the derivation is for is good.
* Fix marking jobs as failed when exceptions are raisedChristopher Baines2020-03-19
| | | | | The switch away from catch broke this, I obviously still don't quite get how with-exception-handler works. Therefore, use it twice as that seems to help.
* Log the time spent in a locked sectionChristopher Baines2020-02-28
|
* Improve the locking around fetching channel instancesChristopher Baines2020-02-28
| | | | | | | I think there's still the potential for a race condition when working with the cached checkout of the repository, but this lock was far too wide. The sensitive section is just the latest-channel-instances call, as it adds the relevant files to the store, and that's what's returned.
* Improve the error reporting within process-load-new-guix-revision-jobChristopher Baines2020-02-27
| | | | By including a backtrace.
* Prevent inlining for a number of proceduresChristopher Baines2020-02-27
| | | | So that the load-new-guix-revision tests work with Guile 3.
* Add a few imports in preparation for Guile 3Christopher Baines2020-02-27
|
* Adapt some license related code to work without mock in the testsChristopher Baines2020-02-24
| | | | | With Guile 3, there's a potential for mock to work in even fewer circumstances. So, adapt the code to enable writing the tests without mock.
* Switch to using some shorter syntax for logging time takenChristopher Baines2020-02-24
| | | | In the load-new-guix-revision module.
* Add missing ROLLBACK for transactionChristopher Baines2020-02-24
|
* Refactor the logging setup out of process-load-new-guix-revision-jobChristopher Baines2020-02-24
| | | | To simplify both procedures.
* Improve the job loggingChristopher Baines2020-02-15
| | | | | | Switch to using a sequence for the ids in the log parts table, and spawn a thread to listen for output from the inferior processes, and enter it in to the database.
* Make deleting the existing log parts optionalChristopher Baines2020-02-15
|
* Define a new parameter for a port used for the inferior error outputChristopher Baines2020-02-15
|
* Fake the store connection in the testsChristopher Baines2020-02-14
| | | | So that the tests don't require a store connection.
* Add temporary roots for channel instance derivationsChristopher Baines2020-02-13
|
* Use a more long lived store connection for loading dataChristopher Baines2020-02-13
| | | | | As this will enable registering temporary roots, to avoid store items being garbage collected.
* Start storing channel instance derivationsChristopher Baines2020-02-11
| | | | These are the ones that relate to Guix pull.
* Switch using set-current-system to parameterizeChristopher Baines2020-02-11
| | | | As this is neater.
* Refactor how channel derivations are handledChristopher Baines2020-02-09
| | | | | | | | Yet again... This makes the channel-derivations for each system accessible within the load-new-guix-revision procedure, in preparation for storing them in the database.
* Collpase store-item-for-channel in to channel->guix-store-itemChristopher Baines2020-02-09
|
* Start computing channel instance derivations for multiple systemsChristopher Baines2020-02-09
| | | | These aren't stored yet, but this is a start.
* Further refactor channel->derivation-file-nameChristopher Baines2020-02-09
| | | | To reduce the line length.
* Refactor channel->derivation-file-name to reduce line lengthChristopher Baines2020-02-09
|
* Shift extracting channel news to later onChristopher Baines2020-02-09
| | | | | To avoid race conditions between jobs, have it happen after the call to extract-information-from.
* Rework cross derivations supportChristopher Baines2020-02-08
| | | | | | | | | | | | | | Stop using the system values as targets, and remove package derivation entries where this is the case. Switch the non-cross derivation case to have a target of "", rather than matching the system, as this makes more sense, and is more consistent now that the target values no longer match the system values. Hardcode some more correct target values, and use these instead. Hopefully this can be better integrated with Guix in the future. This commit also includes a migration attempting to shrink some indexes.