ci: cap paratest concurrency to 1 for SQLite

SQLite serialises writes through a single file lock. Running services
like Databases and TablesDB with paratest_processes=3 produces SQLITE_BUSY
storms — 97 lock errors in Databases and 283 in TablesDB on the prior run
even with a 30s busy_timeout. Drop concurrency to 1 for the SQLite matrix
specifically; the legacy adapter matrix keeps its existing parallelism.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jake Barnby
2026-04-30 15:17:59 +12:00
co-authored by Claude Opus 4.7
parent 50a10a3a1d
commit 78cebbc3ed
+7
View File
@@ -558,6 +558,13 @@ jobs:
PARATEST_PROCESSES="$(nproc)"
fi
# SQLite serialises writes through a single file lock; running
# heavy services in parallel produces SQLITE_BUSY storms even
# with a 30s busy_timeout. Cap concurrency to 1 for SQLite.
if [ "${{ matrix.database }}" = "SQLite" ]; then
PARATEST_PROCESSES=1
fi
docker compose exec -T \
-e _APP_E2E_RESPONSE_FORMAT="${{ github.event.inputs.response_format }}" \
-e _TESTS_OAUTH2_GITHUB_CLIENT_ID="${{ secrets.TESTS_OAUTH2_GITHUB_CLIENT_ID }}" \