Commit graph

1584 commits

Author SHA1 Message Date
de476a8b40 Reapply "Optimise inserting derivation inputs"
Reverting this change entirely was too slow, so change the joins in the query
from inner joins to left joins, as this should mean that NULL values get
inserted if there are missing derivations or derivation outputs, which should
cause an error rather than silently skipping inserting the derivation inputs.

This reverts commit edeb89e0cf.
2025-03-19 14:36:01 +00:00
f456f73ba4 Fix null? when used with a vector 2025-03-18 16:06:23 +00:00
7fe042498f Tweak using vectors in insert-derivation-outputs 2025-03-17 14:59:42 +00:00
b904fdb161 Try to address the issue of missing derivation outputs 2025-03-17 10:26:21 +00:00
1181b13ffe Add a procedure to fix derivation source files
I don't know how, but there are a couple in the data.guix.gnu.org database
that are placeholders.
2025-03-11 19:47:14 +00:00
167b7d029e Extract out code for updating derivation source file nars
So that this can be used to fix some which have crept in to the database as
placeholders.
2025-03-11 19:38:56 +00:00
1ac9f8072e Avoid URL conflicts in tests 2025-03-11 17:15:00 +00:00
241d49136f Get set-thread-name from knots 2025-03-11 17:15:00 +00:00
73e1c0318b Stop using the knots web-server exception handler
As I want to remove this.
2025-03-11 17:15:00 +00:00
c602c6b533 Remove call-with-sigint
This comes from guile-knots now.
2025-03-11 17:15:00 +00:00
9fa059af61 Use chunk-for-each!
As this might use less memory than chunk!
2025-03-11 17:15:00 +00:00
2eb5714829 Use = when comparing numbers 2025-03-11 17:15:00 +00:00
8c79536fa4 Improve the chunking procedures
Remove the empty chunk and use = for numeric equality.
2025-03-11 17:15:00 +00:00
bf3fdfd8d3 Add fix-derivation
To the load data module, since this is where most of the useful code is.
2025-03-11 17:15:00 +00:00
35281c8a49 Extract out derivations-insert-sources
As there are derivations missing sources, and this code will be useful to try
and fix things.
2025-03-11 17:15:00 +00:00
001805a2c9 Avoid a vector->list
As the knots fibers utils accept vectors.
2025-03-11 17:15:00 +00:00
f56cae63fc Fix the --repl option 2025-03-10 08:27:42 +00:00
8635a5561b Add mechanism to fix derivation inputs
Some derivations are missing inputs, I don't know why, but this should allow
for manually fixing the affected derivations.
2025-03-10 08:20:43 +00:00
61d49cedb3 Remove compatability with old guix derivation-inputs 2025-03-10 06:30:43 +00:00
59f1a04f4e Use vector-fold rather than map to construct input-derivations
This avoids append-map and vector->list so might be faster and use less
memory.
2025-03-10 06:30:43 +00:00
edeb89e0cf Revert "Optimise inserting derivation inputs"
I'm concerned that this approach is more error prone and won't error if there
are issues with the data in the database.

This reverts commit 3081887b90.
2025-03-10 06:30:43 +00:00
5684add77e Improve package deduplication
Handle cases where there are up to 4 packages with the same name and version
plus some having replacements. This is currently the case with glibc.
2025-02-25 11:23:23 +00:00
e591346684 Use with-exception-handler in place of with-throw-handler 2025-02-25 10:38:10 +00:00
1da2a09cfb Update the package derivations table in a transaction 2025-02-20 09:58:31 +00:00
53700c9188 Change url in test
To avoid a conflict when running tests in parallel.
2025-02-20 09:58:07 +00:00
c3e42e93a5 Make knots update changes 2025-02-11 10:31:21 +00:00
522c7cd9a2 Remove unmaintainable tests
This needs rethinking, it's not feasible to maintain tests if you have to
struggle to get backtraces when they fail and they rely on fragile and broken
mocking.
2025-02-11 10:29:45 +00:00
37b7c568ed Make the job timeout configurable 2025-02-10 11:05:07 +00:00
131967dc39 Tweak streaming json
Don't set the encoding, this should be handled by knots, and drop the block
size as the previous value seemed excessive.
2025-02-06 17:15:33 +00:00
9e3cfabe77 Fix some nulls 2025-02-06 17:14:47 +00:00
258ee0468b Update use of resource pools 2025-02-06 17:14:47 +00:00
9bf4eea2fd Name the temporary threads 2025-02-04 10:45:52 +00:00
6deeccc22f Remove some knots workarounds 2025-02-03 22:59:34 +00:00
3646de6097 Update exception handling in load-new-guix-revision 2025-02-03 22:59:34 +00:00
931b7bc593 Add a slightly crude method to ignore systems and targets
While processing a revision. It would be good to also record what systems and
targets are in the platforms so it's clear what data is missing, but that can
be added later.
2025-02-03 22:59:34 +00:00
acdedb075d Ensure COLUMNS is set 2025-02-03 13:06:45 +01:00
f9e6daad99 Use the default knots web server exception handler 2025-02-03 12:18:54 +01:00
49f9aa4822 Force add resources parallelism to 1 for some resource pools
This'll be the default in coming revisions of knots, and is neccessary for
pools being used to share a single object.
2025-02-02 01:23:49 +01:00
8bce47dc69 Remove use of call-with-utility-thread
As I think it's no longer necessary, and the PostgreSQL connection is being
handled here incorrectly.
2025-01-31 13:01:37 +01:00
5cca88ca2a Work around the resource pool needing a destructor 2025-01-31 08:56:04 +01:00
8f3968af1e Configure the knots web server connection buffer size
Rather than changing the buffer size when processing each request.
2025-01-29 18:34:20 +01:00
98c4fae76f Move the exception handling to the knots web server
Rather than adding another layer. This commit also removes the extra fibers
layer when processing requests. I forget exactly why this was added, but if
the reason resurfaces then it should be addressed in knots.
2025-01-29 18:34:20 +01:00
7dd6be1c3b Update Knots 2025-01-29 18:34:20 +01:00
83f2981c64 Fix branch package version page if no data is found 2025-01-27 12:25:11 +00:00
9a1c1b30cb Fix matching NULL 2025-01-27 12:25:04 +00:00
ad30746fab Fix null handling in result-serializer-simple-list-with-null-handling 2025-01-26 10:10:50 +00:00
25bf45fe77 Handle NULL values for included_branches 2025-01-17 12:23:46 +00:00
c886685e92 Update Guile Knots 2025-01-14 13:49:28 +00:00
d6cfd780e8 Log resource pool stats on errors 2025-01-06 19:31:54 +00:00
52a307612f Fix log message 2025-01-06 18:53:19 +00:00