f66ff9a3ff
Rework how data is inserted
...
This is the big change needed to allow for parallel revision
processing. Previously, a lock was used to prevent this since the parallel
transactions could deadlock if each inserted data that the other then went to
insert.
By defining the order in which inserts happen, both in terms of the order of
tables, and the order of rows within the table, this change should guarantee
that there won't be deadlocks.
I'm also hoping this change will address whatever issue was causing some
derivation data to be missing from the database.
2026-02-05 12:23:10 +00:00
72fe3b4e47
Suggest why derivations might not be found
2026-01-03 20:39:27 +00:00
f77b6bb318
Remove pg-conn-finish definition
...
This is now exported.
2025-11-26 09:47:30 +00:00
0a7873c0d5
Remove the guile-knots package definition from guix-dev.scm
...
This is in Guix.
2025-11-26 09:46:16 +00:00
75f62f351f
Fix string metric values
2025-11-20 15:43:16 +00:00
eb9ec4acd0
Handle unknown resource pool stats
2025-11-20 14:09:40 +00:00
9a03cdff18
Handle package versions not being found
2025-11-13 12:45:50 +00:00
571ed55c9f
Fix indentation
2025-11-13 12:39:31 +00:00
0611684b0d
Flip the most-appropriate-mime-type arguments
...
As all the calls are wrong.
2025-11-13 12:16:09 +00:00
b71214083d
Avoid inserting duplicate nars
...
The nar_urls table has a unique index, so drop the ON CONFLICT DO NOTHING
bits.
2025-11-13 12:09:53 +00:00
eb75964e76
Handle query parameter errors on the fix derivation page
2025-11-05 08:42:39 +00:00
0113843a72
Fix types for lint warnings data
2025-11-05 08:35:18 +00:00
9eb1fa079c
Avoid divide by 0
2025-11-05 08:22:16 +00:00
7d17e56839
Fix the store item json response code
2025-10-27 08:05:10 +00:00
6e25a64815
Add note about specify-git-repositories
2025-09-26 12:16:46 +01:00
119b814877
Try to avoid an error probably associated with empty package licenses
2025-09-26 12:16:46 +01:00
Ludovic Courtès
98e493f6e0
forgejo: Recognize ‘edited’ as a valid action.
...
‘edited’ actions are emitted for instance when switching the “draft”
flag of a pull request.
2025-07-17 11:39:47 +02:00
b781d0e86d
Add an example slow endpoint to help with testing
...
How other things handle slow responses.
2025-07-17 09:55:19 +01:00
Ludovic Courtès
eec7715928
forgejo: Enqueue the repository URL, not the pull request URL.
...
Previously the pull request URL (say,
https://codeberg.org/guix/guix/pulls/123 ) would be mistaken for the Git
repository URL.
2025-07-16 20:28:18 +02:00
Ludovic Courtès
b35c26a74e
forgejo: Always return a response and its body.
...
Fixes the bug reported in
<https://codeberg.org/guix/maintenance/pulls/18#issuecomment-5851510 >.
Previously ‘forgejo-controller’ would return a single value in
successful cases, whichever ‘enqueue-job-for-pull-request’ or
‘mark-pull-request-branch-for-deletion’ would return.
2025-07-16 19:11:33 +02:00
2e91f31559
Replace documentation on dumps with some example configuration
...
Since the machine running data.qa.guix.gnu.org doesn't currently have the disk
space to generate dumps.
2025-07-11 10:54:58 +01:00
2b6bdcac08
Fix eq? in recording failures
2025-07-10 23:48:52 +01:00
0e11540fe3
Fix exception message
2025-07-10 23:48:46 +01:00
a3d0e72e48
Fix issue with handling failure to build system channel instance
...
That resulted in empty revisions. Raise an exception rather than returning #f.
2025-07-10 18:06:30 +01:00
683b375d56
Tweak inserting sources
...
To try and make it faster.
2025-07-10 09:49:35 +01:00
a4480ac357
Change fixed-size-thread-pool to a thread-pool
...
To avoid the queueing fiber.
2025-07-10 09:49:35 +01:00
3f837481fd
Use fibers-batch-map
...
As the parallelism should probably be customised.
2025-07-10 09:49:35 +01:00
8dcc89df50
Avoid choice-operation for the gc watcher
...
In case this causes a memory leak.
2025-07-10 09:49:35 +01:00
42ac51212f
Use bulk-insert for inserting derivation_sources
2025-07-10 09:49:35 +01:00
2fc20fa37e
Tweak and export bulk-insert
2025-07-10 09:49:35 +01:00
2073e446b7
Tweak the job script
...
Don't use with-fluids (I forget why), and enable core dumps.
2025-07-09 12:50:24 +01:00
90ecbdea70
Update Guile Knots
2025-07-09 12:50:07 +01:00
1728494363
Try to better chunk derivations for insertion
2025-07-08 20:41:16 +01:00
734ee541be
Update Guile Knots
2025-07-08 20:41:16 +01:00
f279aa0071
Destroy the utility thread pool
2025-07-08 20:41:04 +01:00
401f916517
Tweak gc logging
2025-07-08 10:25:43 +01:00
8eb5c047b9
Avoid raising an unhandled exception
2025-07-08 07:24:32 +01:00
4d04a7f47b
Stop sharing the derivation-ids-hash-table
...
Since the derivations are independent between systems, and this is just a
cache of the database ids.
2025-07-08 07:24:32 +01:00
0184f10942
Limit the parallelism when running derivation-file-names->derivation-ids
...
To focus on finishing some systems before starting the next.
2025-07-06 15:01:03 +01:00
02947cc9c4
Replace more instances of system->system-id with lookup-system-id
...
To avoid systems being inserted from queries.
2025-07-04 14:16:03 +01:00
98e1b6b3c7
Pass systems and targets to find-broken-derivations-in-revision
2025-07-04 13:39:32 +01:00
5701c5ca55
Raise an exception on missing level counts
2025-07-04 13:15:03 +01:00
7e910be46e
Allow specifying the systems and targets for compute and fix
2025-07-04 12:49:12 +01:00
28d762b568
Re-indent fibers-let bits
2025-07-04 10:38:37 +01:00
a5e9e2f6a5
Stream the /compare.json response
...
Since this could be quite large.
2025-07-04 10:36:26 +01:00
62cf3ff7cb
Add list->json-array
2025-07-04 10:29:59 +01:00
df79bc198e
Include the full URI when logging slow responses
2025-07-01 19:10:21 +01:00
c6366605a5
Allow starting multiple database connections at once
2025-07-01 19:03:14 +01:00
8640958af7
Retry processing background queue jobs on exception
2025-07-01 13:33:22 +01:00
f1e444babe
Process queued build events in parallel
2025-07-01 13:07:44 +01:00