aboutsummaryrefslogtreecommitdiff
path: root/guix-data-service
Commit message (Collapse)AuthorAge
* Fix git-commit-exists?Christopher Baines2024-11-08
|
* Fix sorting license setsChristopher Baines2024-11-08
|
* Fix starting with an empty databaseChristopher Baines2024-11-08
|
* Have the background resource pool users be very patientChristopher Baines2024-11-05
|
* Always assume that resource pool waiters will stick aroundChristopher Baines2024-11-05
| | | | As I think this is a more efficient design.
* Move the inferior cleanup to the end of each system+targetChristopher Baines2024-11-04
|
* RefactorChristopher Baines2024-11-03
|
* Use a separate db connection in channel-derivations-by-system-promiseChristopher Baines2024-11-02
| | | | As this can run in parallel with something else using conn.
* Increase the sleep-operation time for telling waiters to retryChristopher Baines2024-10-31
| | | | As this being too short was leading call-with-resource-pool to get stuck.
* Finish chasing the call-with-resource-pool bugChristopher Baines2024-10-31
| | | | | | | | This took a while to find as process-job would just get stuck, and this wasn't directly related to any particular change, just that more fibers increased the chance of hitting it. This commit includes lots of the things I changed while debugging.
* Tweak the resource pool return behaviourChristopher Baines2024-10-31
| | | | | | | | | If there's lots of contention for the resource pool, there will be lots of waiters, so telling all of them to retry whenever a resource is returned seems wasteful. This commit adds a new option (assume-reliable-waiters?) which will have the resource pool try to give a returned resource to the oldest waiter, if this fails, it'll go back to the old behaviour of telling all waiters to retry.
* Ensure that call-with-resource-from-pool doesn't get stuckChristopher Baines2024-10-31
| | | | | | As I think this was happening when it missed the resource-pool-retry-checkout reply from the resource pool. Handle this case by periodically retrying with a configurable timeout.
* Add call-with-default-io-waitersChristopher Baines2024-10-31
| | | | As this is useful when starting threads from a fibers context.
* Add new fibers utilitiesChristopher Baines2024-10-31
| | | | | | The new fibers-map uses the same batching approach that fibers-for-each uses, and fibers-map-with-progress allows tracking on the results while the map is happening.
* Add make-queueing-channelChristopher Baines2024-10-31
| | | | From the build coordinator.
* Add a commentChristopher Baines2024-10-27
|
* Rework inserting derivationsChristopher Baines2024-10-27
| | | | To add more parallelism.
* Use a common derivation-ids-hash-tableChristopher Baines2024-10-27
| | | | | | To allow for calling derivation-file-names->derivation-ids in parallel across multiple fibers, using the PostgreSQL connection fiber to perform atomic operations.
* Add placeholder derivation source file nar proceduresChristopher Baines2024-10-27
|
* Include the package version in the "error when computing" messagesChristopher Baines2024-10-27
| | | | As this helps when there are lots of packages with the same name.
* Ensure the guix derivations are stored prior to attempting to substituteChristopher Baines2024-10-27
|
* Add fibers-promise-resetChristopher Baines2024-10-27
|
* Fix extract-information-from messageChristopher Baines2024-10-27
|
* Increase parallelism when loading revisionsChristopher Baines2024-10-27
|
* Use a dedicated fiber for heap size monitoringChristopher Baines2024-10-27
|
* Fix free-disk-space callChristopher Baines2024-10-13
| | | | As the WAL file might not exist.
* Make the WAL threshold more flexibleChristopher Baines2024-10-10
| | | | | | So that the WAL can grow more when there's sufficient space. When the inferiors are closed it takes time to restart them, so doing this less should speed up processing revisions.
* Vacuum some tables when deleting derivationsChristopher Baines2024-10-04
|
* Don't use the reserved pool for HTML/JSON responsesChristopher Baines2024-09-08
| | | | Just use it for providing substitutes.
* Include background pool metricsChristopher Baines2024-09-08
|
* Increase the resource pool default timeout a littleChristopher Baines2024-09-08
|
* Speed up package-description-and-synopsis-locale-options-guix-revisionChristopher Baines2024-09-08
|
* Don't timeout waiting for background pool connectionsChristopher Baines2024-09-08
|
* Add a new background connection poolChristopher Baines2024-09-08
| | | | Mostly to constrain the build server event handlers.
* Speed up select-builds-with-context-by-derivation-outputChristopher Baines2024-09-07
|
* Timeout when trying to process build eventsChristopher Baines2024-09-03
| | | | | As if they relate to derivations that are currently being inserted, they'll have to wait until the job is processed.
* Add retrying around inserting channel instance derivationsChristopher Baines2024-08-29
|
* Stop using profiles for channel instancesChristopher Baines2024-08-27
| | | | | Just use the store item instead. This should avoid issues where the profile gets GC'd.
* Handle concatenated data in package-derivation-data->names-and-versionsChristopher Baines2024-08-22
| | | | | As this broke when constructing the package-data from separate queries per system.
* Further reduce the chunk sizeChristopher Baines2024-08-20
|
* Increase the WAL thresholdChristopher Baines2024-08-20
|
* Make the free space requirement configurableChristopher Baines2024-08-20
|
* Increase the inferior idle secondsChristopher Baines2024-08-18
|
* Improve the implementation of checking for idle resourcesChristopher Baines2024-08-18
|
* Improve logging around use of inferiorsChristopher Baines2024-08-17
|
* Log the number of inferiors when reporting WAL issuesChristopher Baines2024-08-16
| | | | And reduce the threshold.
* Check the WAL size more frequently when using inferiorsChristopher Baines2024-08-16
| | | | | | Since getting an inferior from the pool can take some time, it's not sufficient to just check prior to attempting to fetch an inferior from the pool. Instead set a timeout and check periodically.
* Check the WAL size before computing lint warningsChristopher Baines2024-08-16
| | | | | As even though this might not use the store, the inferior still holds a store connection open.
* Use more threads for the serverChristopher Baines2024-08-14
| | | | Just in case this avoids writing responses blocking new requests coming in.
* Move the resource pools to a different threadChristopher Baines2024-08-14
| | | | As the server thread can block for a while when writing big responses.