From 56b5b3153f2ed76ccb7f56d626a7cf1aec79a6f7 Mon Sep 17 00:00:00 2001 From: Kevin Burke Date: Thu, 30 Jul 2026 11:14:18 -0700 Subject: [PATCH] ci: use a count-based fuzztime limit to dodge a Go toolchain race Duration-based -fuzztime (e.g. 5s) hits a known unfixed race in internal/fuzz where the context deadline used to stop workers can leak past the code that's supposed to suppress it as a normal stop signal, failing the run with a bare "context deadline exceeded" and no crasher input (golang/go#75804). Confirmed against upstream repro output and the Go team's own workaround: reproduces regardless of fuzztime length (seen from 3s to 10+ minutes upstream), and the fix (CL 804900) only just landed in release-branch.go1.27, not yet in any released stable/oldstable toolchain. Switching to a count-based limit (Nx) avoids the wall-clock deadline context entirely, sidestepping the race rather than gambling that a longer duration makes it less likely. Co-Authored-By: Claude Sonnet 5 --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 2f1a927..3bace48 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -37,4 +37,4 @@ jobs: run: go test -trimpath -race ./... - name: Run Fuzz Tests - run: go test -fuzz=FuzzAppendSanitizedMetricName -fuzztime=5s -parallel=2 ./datadog + run: go test -fuzz=FuzzAppendSanitizedMetricName -fuzztime=1000000x -parallel=2 ./datadog