Run at most 4 tests of a package at once in the test phase (closes #224)
check / check (push) Waiting to run

On a busy host, TestService_Get_ReturnsByItsDeadline failed because its
request returned over a second after its 200 ms deadline. The request
does not ignore its deadline: with as many tests running at once in the
package's test process as the host has CPUs, it waited to be scheduled,
or for SQLite calls queued on a lock inside the SQLite library that
every database in the process shares. The test phase now passes
-parallel 4 to go test. -p is unchanged: capping it also caps
compiling, which made the step much slower.

Model: opus-5-5
This commit is contained in:
2026-10-08 12:20:17 +00:00
parent bdde021b45
commit bd700650e0
2 changed files with 15 additions and 3 deletions
+8
View File
@@ -30,6 +30,14 @@ P2: security: per-IP rate limiting on the image routes
# Completed Steps
- 2026-10-08 the test phase of the `Dockerfile` runs at most 4 tests of a
package at once (`go test -parallel 4`, closes #224), where it ran as many as
the host has CPUs. On a busy host, `TestService_Get_ReturnsByItsDeadline`
failed because its request returned over a second after its deadline: the
request was waiting to be scheduled, or for SQLite calls queued on a lock
inside the SQLite library that every database in the test process shares.
`-p`, how many packages are tested at once, is unchanged, as capping it also
slows compiling.
- 2026-10-08 every output format is saved with settings pixa sets on purpose
(closes #232): each format has its own govips export, as JPEG XL does, in
place of govips' generic `Export`, which sent libvips a zero for some settings