Repository navigation
fix(docs): run the verify-docs counts test serially and show its output - #4451
Conversation
Several wheels JVMs starting at once in the fresh isolated home race in Lucee's OSGi bundle cache and fail (locally) or stall (CI), so the test failed intermittently and, with the harness step blocking, failed Verify docs. The test now runs its two blocks one at a time (8/8 locally; 4-way failed 4/12), bounds each command at 60 s, prints the child's output when it fails, and is skipped on CI if it still fails while #4450 is open. Refs #4450. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Peter Amiri <peter@alurium.com>
|
rev1-r3 review @ 6b81574: code APPROVE (final pending PR CI) This meets the conditions agreed for a temporary skip:
Mechanics check: Housekeeping: #4450 has the milestone but no assignee on GitHub. Please assign it, so it's clear who owns un-skipping this. Gate: PR CI. I'll post the final when it's green. |
|
rev1-r3 review @ 6b81574: APPROVE (final) PR CI is now 20 pass / 0 fail / 0 pending, with 3 skipping. In Ready to merge. The real fix, serialising JVM starts or warming the bundle cache for the full 4-way |
Refs #4450.
Summary
The docs-harness test "verify-docs reports pass/fail counts" fails intermittently, and since the harness step became blocking (#4444) it fails "Verify docs" on PRs. On CI it ran into the 240 s command bound from #4447 and failed
2 !== 0; before #4447 it hung.Cause (now visible locally, because the test prints the child's output):
wheelsJVMs starting at once in the run's fresh isolated CLI home (fix(docs): run verify:docs and its harness tests in a throwaway CLI home #4425) race in Lucee's OSGi bundle cache.org.osgi.framework.BundleException: Bundle symbolic name and version are not unique(org.lucee.xml.apis,commons-text, …), followed byCannot invoke "javax.script.ScriptEngine.put(…)" because "engine" is null.verify-docsruns the per-block examples four at a time, so the sample's{test:cli}and{test:compile}blocks start JVMs together. The fixture'swheels newthen failed all 4 retries, andverify-docsexited 2.VERIFY_DOCS_CONCURRENCY=1it passed 8 of 8. Cloning the real home'slucee-server/into the isolated home did not help (3 of 8 failed), so the race isn't only a fresh context's first start.This PR changes only this test:
VERIFY_DOCS_CONCURRENCY=1). With two examples, that costs nothing.WHEELS_EXEC_TIMEOUT_MS), so a stall surfaces in a minute, not four.2 !== 0.The full
verify:docsrun still uses 4-way concurrency and can hit the same race. Fixing that, by serializing JVM starts or warming the bundle cache properly, is #4450, which stays open.Tests
WHEELS_BIN=/nonexistent) withCI=1marks it skipped and prints the diagnostics. WithoutCI, it fails with the output in the message.🤖 Generated with Claude Code