tsenart / vegeta

HTTP load testing tool and library. It's over 9000!
http://godoc.org/github.com/tsenart/vegeta/lib
MIT License
23.51k stars 1.36k forks source link

Tests fail with 'concurrent map read and map write' #494

Closed anatol closed 1 year ago

anatol commented 4 years ago

I am building vegeta 12.8.0 at ArchLinux. When I ran tests with go test ./... I got a failure like one below. There is probably some non-synchronized access to the data structure that need to be fixed.

go: downloading github.com/google/go-cmp v0.2.0
go: downloading github.com/dgryski/go-lttb v0.0.0-20180810165845-318fcdf10a77
go: downloading github.com/dgryski/go-gk v0.0.0-20140819190930-201884a44051
go: downloading github.com/alecthomas/jsonschema v0.0.0-20180308105923-f2c93856175a
go: downloading github.com/streadway/quantile v0.0.0-20150917103942-b0c588724d25
go: downloading github.com/miekg/dns v1.1.17
go: downloading github.com/bmizerany/perks v0.0.0-20141205001514-d9a9656a3a4b
go: downloading golang.org/x/sys v0.0.0-20190904154756-749cb33beabd
go: downloading golang.org/x/crypto v0.0.0-20190829043050-9756ffdc2472
ok      github.com/tsenart/vegeta   0.013s
?       github.com/tsenart/vegeta/internal/cmd/echosrv  [no test files]
?       github.com/tsenart/vegeta/internal/cmd/jsonschema   [no test files]
ok      github.com/tsenart/vegeta/internal/resolver 0.028s
fatal error: concurrent map read and map write

goroutine 42 [running]:
runtime.throw(0x890da6, 0x21)
    /usr/lib/go/src/runtime/panic.go:1112 +0x72 fp=0xc000408c70 sp=0xc000408c40 pc=0x4360c2
runtime.mapaccess1_fast32(0x80ce00, 0xc0000210e0, 0xb3f6afe800000012, 0xc0003f8008)
    /usr/lib/go/src/runtime/map_fast32.go:21 +0x194 fp=0xc000408c98 sp=0xc000408c70 pc=0x4121f4
encoding/gob.typeId.gobType(...)
    /usr/lib/go/src/encoding/gob/type.go:193
encoding/gob.typeId.string(0x12, 0xc0003d2240, 0x12)
    /usr/lib/go/src/encoding/gob/type.go:198 +0xd1 fp=0xc000408cc8 sp=0xc000408c98 pc=0x773d51
encoding/gob.(*Decoder).decIgnoreOpFor(0xc0003f2000, 0x12, 0xc000408f90, 0x0)
    /usr/lib/go/src/encoding/gob/decode.go:896 +0x78b fp=0xc000408dc0 sp=0xc000408cc8 pc=0x7668ab
encoding/gob.(*Decoder).compileDec(0xc0003f2000, 0xc000000018, 0xc000031740, 0xc0003dc100, 0x0, 0x0)
    /usr/lib/go/src/encoding/gob/decode.go:1121 +0x3f1 fp=0xc0004092d0 sp=0xc000408dc0 pc=0x7681b1
encoding/gob.(*Decoder).getDecEnginePtr(0xc0003f2000, 0x18, 0xc000031740, 0x92cc00, 0x813060, 0x1)
    /usr/lib/go/src/encoding/gob/decode.go:1147 +0x160 fp=0xc000409350 sp=0xc0004092d0 pc=0x768c20
encoding/gob.(*Decoder).decodeValue(0xc0003f2000, 0x18, 0x813060, 0xc0003e60a0, 0x16)
    /usr/lib/go/src/encoding/gob/decode.go:1192 +0xf0 fp=0xc000409438 sp=0xc000409350 pc=0x769060
encoding/gob.(*Decoder).DecodeValue(0xc0003f2000, 0x813060, 0xc0003e60a0, 0x16, 0x0, 0x0)
    /usr/lib/go/src/encoding/gob/decoder.go:213 +0x148 fp=0xc000409490 sp=0xc000409438 pc=0x76a5c8
encoding/gob.(*Decoder).Decode(0xc0003f2000, 0x813060, 0xc0003e60a0, 0xc0003f2001, 0xc0003e60a0)
    /usr/lib/go/src/encoding/gob/decoder.go:188 +0x16d fp=0xc0004094f8 sp=0xc000409490 pc=0x76a3dd
github.com/tsenart/vegeta/lib.NewDecoder.func1(0xc0003e60a0, 0xc0003e60a0, 0xc0003de0a0)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:147 +0x40 fp=0xc000409530 sp=0xc0004094f8 pc=0x7a8670
github.com/tsenart/vegeta/lib.Decoder.Decode(...)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:152
github.com/tsenart/vegeta/lib.DecoderFor(0x91cca0, 0xc0003d2120, 0x0)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:115 +0x2f8 fp=0xc000409628 sp=0xc000409530 pc=0x795c68
github.com/tsenart/vegeta/lib.TestResultEncoding.func1.1(0xc23e6eb00007acb, 0xcbffadd1858a6e67, 0x33909811385402e1, 0x14569e35287a2c79, 0x73dcd90fcddea423, 0xc00002a090, 0x26, 0x26, 0xc0003e0020, 0x13, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:91 +0x37d fp=0xc000409b40 sp=0xc000409628 pc=0x7aca6d
runtime.call128(0xc00056a060, 0xc0003d2000, 0xc0003e4000, 0x6000000068)
    /usr/lib/go/src/runtime/asm_amd64.s:541 +0x52 fp=0xc000409bd0 sp=0xc000409b40 pc=0x466132
reflect.Value.call(0x82b380, 0xc0003d2000, 0x13, 0x884e0f, 0x4, 0xc0003d4000, 0x9, 0x9, 0xc00009de01, 0xed5eb61f8, ...)
    /usr/lib/go/src/reflect/value.go:460 +0x8ab fp=0xc000409de8 sp=0xc000409bd0 pc=0x4bf45b
reflect.Value.Call(0x82b380, 0xc0003d2000, 0x13, 0xc0003d4000, 0x9, 0x9, 0xc0003d2030, 0x0, 0x0)
    /usr/lib/go/src/reflect/value.go:321 +0xb4 fp=0xc000409e68 sp=0xc000409de8 pc=0x4be964
testing/quick.Check(0x82b380, 0xc0003d2000, 0x0, 0xc00009df70, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:290 +0x27b fp=0xc000409f30 sp=0xc000409e68 pc=0x79099b
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc00012a7e0)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac fp=0xc000409f80 sp=0xc000409f30 pc=0x7acf7c
testing.tRunner(0xc00012a7e0, 0xc000021110)
    /usr/lib/go/src/testing/testing.go:992 +0xdc fp=0xc000409fd0 sp=0xc000409f80 pc=0x4fc5cc
runtime.goexit()
    /usr/lib/go/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc000409fd8 sp=0xc000409fd0 pc=0x467d71
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 1 [chan receive]:
testing.(*T).Run(0xc00012a480, 0x889a78, 0x12, 0x8a38d0, 0x48a901)
    /usr/lib/go/src/testing/testing.go:1044 +0x37e
testing.runTests.func1(0xc00012aa20)
    /usr/lib/go/src/testing/testing.go:1285 +0x78
testing.tRunner(0xc00012aa20, 0xc000157e10)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
testing.runTests(0xc00000ea20, 0xbec860, 0x25, 0x25, 0x0)
    /usr/lib/go/src/testing/testing.go:1283 +0x2a7
testing.(*M).Run(0xc000160000, 0x0)
    /usr/lib/go/src/testing/testing.go:1200 +0x15f
main.main()
    _testmain.go:122 +0x135

goroutine 6 [chan receive]:
testing.(*T).Parallel(0xc00012ab40)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestAttackRate(0xc00012ab40)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:24 +0x53
testing.tRunner(0xc00012ab40, 0x8a37d8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 7 [chan receive]:
testing.(*T).Parallel(0xc00012ac60)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestAttackDuration(0xc00012ac60)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:42 +0x53
testing.tRunner(0xc00012ac60, 0x8a37c8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 8 [chan receive]:
testing.(*T).Parallel(0xc00012ad80)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestTLSConfig(0xc00012ad80)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:66 +0x2f
testing.tRunner(0xc00012ad80, 0x8a3900)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 9 [chan receive]:
testing.(*T).Parallel(0xc00012aea0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestRedirects(0xc00012aea0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:75 +0x53
testing.tRunner(0xc00012aea0, 0x8a38b8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 10 [chan receive]:
testing.(*T).Parallel(0xc00012afc0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestNoFollow(0xc00012afc0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:93 +0x50
testing.tRunner(0xc00012afc0, 0x8a3890)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 11 [chan receive]:
testing.(*T).Parallel(0xc00012b0e0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestTimeout(0xc00012b0e0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:112 +0x50
testing.tRunner(0xc00012b0e0, 0x8a3918)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 12 [chan receive]:
testing.(*T).Parallel(0xc00012b200)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestLocalAddr(0xc00012b200)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:134 +0x50
testing.tRunner(0xc00012b200, 0x8a3850)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 13 [chan receive]:
testing.(*T).Parallel(0xc00012b320)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestKeepAlive(0xc00012b320)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:155 +0x2f
testing.tRunner(0xc00012b320, 0x8a3830)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 14 [chan receive]:
testing.(*T).Parallel(0xc00012b440)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestConnections(0xc00012b440)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:167 +0x2f
testing.tRunner(0xc00012b440, 0x8a3808)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 15 [chan receive]:
testing.(*T).Parallel(0xc00012b560)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestStatusCodeErrors(0xc00012b560)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:176 +0x50
testing.tRunner(0xc00012b560, 0x8a38f8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 16 [chan receive]:
testing.(*T).Parallel(0xc00012b680)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestBadTargeterError(0xc00012b680)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:192 +0x40
testing.tRunner(0xc00012b680, 0x8a37e8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 18 [chan receive]:
testing.(*T).Parallel(0xc00012b7a0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestResponseBodyCapture(0xc00012b7a0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:202 +0x50
testing.tRunner(0xc00012b7a0, 0x8a38c0)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 19 [chan receive]:
testing.(*T).Parallel(0xc00012b8c0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestProxyOption(0xc00012b8c0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:220 +0x50
testing.tRunner(0xc00012b8c0, 0x8a3898)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 20 [chan receive]:
testing.(*T).Parallel(0xc00012b9e0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestMaxBody(0xc00012b9e0)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:251 +0x3f
testing.tRunner(0xc00012b9e0, 0x8a3858)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 21 [chan receive]:
testing.(*T).Parallel(0xc00012bb00)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestUnixSocket(0xc00012bb00)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:281 +0x63
testing.tRunner(0xc00012bb00, 0x8a3920)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 22 [chan receive]:
testing.(*T).Parallel(0xc00012bc20)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestClient(0xc00012bc20)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:331 +0x50
testing.tRunner(0xc00012bc20, 0x8a3800)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 23 [chan receive]:
testing.(*T).Parallel(0xc00012bd40)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestVegetaHeaders(0xc00012bd40)
    /build/vegeta/src/vegeta-12.8.0/lib/attack_test.go:365 +0x53
testing.tRunner(0xc00012bd40, 0x8a3930)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 24 [chan receive]:
testing.(*T).Parallel(0xc00012be60)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestHistogram_Add(0xc00012be60)
    /build/vegeta/src/vegeta-12.8.0/lib/histogram_test.go:10 +0x43
testing.tRunner(0xc00012be60, 0x8a3820)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 25 [chan receive]:
testing.(*T).Parallel(0xc000174000)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestBuckets_UnmarshalText(0xc000174000)
    /build/vegeta/src/vegeta-12.8.0/lib/histogram_test.go:43 +0x43
testing.tRunner(0xc000174000, 0x8a37f0)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 26 [chan receive]:
testing.(*T).Parallel(0xc000174120)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestMetrics_Add(0xc000174120)
    /build/vegeta/src/vegeta-12.8.0/lib/metrics_test.go:16 +0x43
testing.tRunner(0xc000174120, 0x8a3860)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 27 [chan receive]:
testing.(*T).Parallel(0xc000174240)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestMetrics_NoInfiniteRate(0xc000174240)
    /build/vegeta/src/vegeta-12.8.0/lib/metrics_test.go:79 +0x43
testing.tRunner(0xc000174240, 0x8a3870)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 28 [chan receive]:
testing.(*T).Parallel(0xc000174360)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestMetrics_NonNilErrorsOnClose(0xc000174360)
    /build/vegeta/src/vegeta-12.8.0/lib/metrics_test.go:91 +0x43
testing.tRunner(0xc000174360, 0x8a3878)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 29 [chan receive]:
testing.(*T).Parallel(0xc000174480)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestMetrics_EmptyMetricsCanBeReported(0xc000174480)
    /build/vegeta/src/vegeta-12.8.0/lib/metrics_test.go:105 +0x2f
testing.tRunner(0xc000174480, 0x8a3868)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 30 [chan receive]:
testing.(*T).Parallel(0xc0001745a0)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestConstantPacer(0xc0001745a0)
    /build/vegeta/src/vegeta-12.8.0/lib/pacer_test.go:12 +0x43
testing.tRunner(0xc0001745a0, 0x8a3810)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 34 [chan receive]:
testing.(*T).Parallel(0xc000174a20)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestLinearPacer(0xc000174a20)
    /build/vegeta/src/vegeta-12.8.0/lib/pacer_test.go:231 +0x43
testing.tRunner(0xc000174a20, 0x8a3848)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 38 [chan receive]:
testing.(*T).Parallel(0xc00012a360)
    /usr/lib/go/src/testing/testing.go:867 +0x1d5
github.com/tsenart/vegeta/lib.TestResultDecoding(0xc00012a360)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:15 +0x43
testing.tRunner(0xc00012a360, 0x8a38c8)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 39 [chan receive]:
testing.tRunner.func1(0xc00012a480)
    /usr/lib/go/src/testing/testing.go:957 +0x238
testing.tRunner(0xc00012a480, 0x8a38d0)
    /usr/lib/go/src/testing/testing.go:996 +0x10b
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 40 [runnable]:
math/rand.seedrand(...)
    /usr/lib/go/src/math/rand/rng.go:195
math/rand.(*rngSource).Seed(0xc000128a00, 0x15f7a7e41e3bdd66)
    /usr/lib/go/src/math/rand/rng.go:218 +0x97
math/rand.NewSource(...)
    /usr/lib/go/src/math/rand/rand.go:46
testing/quick.(*Config).getRand(0xbf25c0, 0x9)
    /usr/lib/go/src/testing/quick/quick.go:201 +0xbd
testing/quick.Check(0x82b380, 0xc000021470, 0x0, 0xc00009bf70, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:281 +0x162
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc00012a5a0)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac
testing.tRunner(0xc00012a5a0, 0xc000020870)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 41 [runnable]:
encoding/gob.NewDecoder(0x91d000, 0xc00038e0e0, 0xc000394001)
    /usr/lib/go/src/encoding/gob/decoder.go:49 +0xad
github.com/tsenart/vegeta/lib.NewDecoder(0x91d000, 0xc00038e0e0, 0x2)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:146 +0x39
github.com/tsenart/vegeta/lib.DecoderFor(0x91cca0, 0xc000596120, 0x0)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:115 +0x2cb
github.com/tsenart/vegeta/lib.TestResultEncoding.func1.1(0x3f2df0aa000063ac, 0x72c29f381a67b631, 0x4f58ac775077e599, 0x24d2221837fd2907, 0xe452b6e953bf2713, 0xc000390000, 0x23, 0x23, 0xc000394020, 0x1c, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:91 +0x37d
reflect.Value.call(0x82b380, 0xc000596000, 0x13, 0x884e0f, 0x4, 0xc000598000, 0x9, 0x9, 0xc00009d601, 0xed5eb61f8, ...)
    /usr/lib/go/src/reflect/value.go:460 +0x8ab
reflect.Value.Call(0x82b380, 0xc000596000, 0x13, 0xc000598000, 0x9, 0x9, 0xc000596030, 0x0, 0x0)
    /usr/lib/go/src/reflect/value.go:321 +0xb4
testing/quick.Check(0x82b380, 0xc000596000, 0x0, 0xc00009d770, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:290 +0x27b
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc00012a6c0)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac
testing.tRunner(0xc00012a6c0, 0xc000020d80)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 43 [runnable]:
encoding/gob.compileEnc(0xc000030780, 0xc0003a9168, 0xc000021500)
    /usr/lib/go/src/encoding/gob/encode.go:630 +0x62
encoding/gob.buildEncEngine(0xc000021500, 0xc000030780, 0xc00040d168, 0x0)
    /usr/lib/go/src/encoding/gob/encode.go:684 +0x15c
encoding/gob.getEncEngine(0xc000030780, 0xc00040d168, 0xc000030780)
    /usr/lib/go/src/encoding/gob/encode.go:666 +0xa9
encoding/gob.encOpFor(0x92cc00, 0x82e160, 0xc00040ca68, 0xc00040d168, 0x0, 0x0)
    /usr/lib/go/src/encoding/gob/encode.go:575 +0x457
encoding/gob.compileEnc(0xc000030a40, 0xc0003a9168, 0xc0000214a0)
    /usr/lib/go/src/encoding/gob/encode.go:642 +0x204
encoding/gob.buildEncEngine(0xc0000214a0, 0xc000030a40, 0xc00040d168, 0x0)
    /usr/lib/go/src/encoding/gob/encode.go:684 +0x15c
encoding/gob.getEncEngine(0xc000030a40, 0xc00040d168, 0xc000030a40)
    /usr/lib/go/src/encoding/gob/encode.go:666 +0xa9
encoding/gob.encOpFor(0x92cc00, 0x83bc20, 0xc00040cfa8, 0xc00040d168, 0x0, 0x0)
    /usr/lib/go/src/encoding/gob/encode.go:575 +0x457
encoding/gob.compileEnc(0xc0000316c0, 0xc0003a9168, 0xc000021410)
    /usr/lib/go/src/encoding/gob/encode.go:642 +0x204
encoding/gob.buildEncEngine(0xc000021410, 0xc0000316c0, 0xc00040d168, 0x0)
    /usr/lib/go/src/encoding/gob/encode.go:684 +0x15c
encoding/gob.getEncEngine(0xc0000316c0, 0x0, 0x7770e2)
    /usr/lib/go/src/encoding/gob/encode.go:666 +0xa9
encoding/gob.(*Encoder).encode(0xc000124960, 0xc000124998, 0x805f60, 0xc00057a1c0, 0x16, 0xc0000316c0)
    /usr/lib/go/src/encoding/gob/encode.go:692 +0x6f
encoding/gob.(*Encoder).sendActualType(0xc000124960, 0x91ccc0, 0xc00056a150, 0xc00057a040, 0xc00057a080, 0x92cc00, 0x86dfa0, 0xc85e2cd6ce7cb610)
    /usr/lib/go/src/encoding/gob/encoder.go:106 +0x1de
encoding/gob.(*Encoder).sendType(0xc000124960, 0x91ccc0, 0xc00056a150, 0xc00057a040, 0x92cc00, 0x86dfa0, 0xc00040d4d8)
    /usr/lib/go/src/encoding/gob/encoder.go:169 +0xd3
encoding/gob.(*Encoder).sendTypeDescriptor(0xc000124960, 0x91ccc0, 0xc00056a150, 0xc00057a040, 0xc000031740)
    /usr/lib/go/src/encoding/gob/encoder.go:191 +0xd2
encoding/gob.(*Encoder).EncodeValue(0xc000124960, 0x813060, 0xc000124320, 0x16, 0x0, 0x0)
    /usr/lib/go/src/encoding/gob/encoder.go:244 +0x2e7
encoding/gob.(*Encoder).Encode(0xc000124960, 0x813060, 0xc000124320, 0xc000124960, 0xc000124960)
    /usr/lib/go/src/encoding/gob/encoder.go:176 +0xa4
github.com/tsenart/vegeta/lib.NewEncoder.func1(0xc000124320, 0xc00056a150, 0xc000061130)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:160 +0x40
github.com/tsenart/vegeta/lib.TestResultEncoding.func1.1(0x5500c7970000c84d, 0x2b4deb568d0d2667, 0xc1e71c815c62eac0, 0xcb124f39cd8aa9be, 0xf6e9aa79c0c5de1, 0xc000572050, 0x2, 0x2, 0xc000572060, 0x4, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:86 +0x2ed
reflect.Value.call(0x82b380, 0xc00056a000, 0x13, 0x884e0f, 0x4, 0xc00056c000, 0x9, 0x9, 0xc00009e601, 0xed5eb61f8, ...)
    /usr/lib/go/src/reflect/value.go:460 +0x8ab
reflect.Value.Call(0x82b380, 0xc00056a000, 0x13, 0xc00056c000, 0x9, 0x9, 0xc00056a030, 0x0, 0x0)
    /usr/lib/go/src/reflect/value.go:321 +0xb4
testing/quick.Check(0x82b380, 0xc00056a000, 0x0, 0xc00009e770, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:290 +0x27b
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc0001746c0)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac
testing.tRunner(0xc0001746c0, 0xc000021140)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 44 [runnable]:
net/textproto.initCommonHeader()
    /usr/lib/go/src/net/textproto/reader.go:717 +0xc7
sync.(*Once).doSlow(0xc1da90, 0x8a3e20)
    /usr/lib/go/src/sync/once.go:66 +0xec
sync.(*Once).Do(...)
    /usr/lib/go/src/sync/once.go:57
net/textproto.NewReader(...)
    /usr/lib/go/src/net/textproto/reader.go:32
github.com/tsenart/vegeta/lib.NewCSVDecoder.func1(0xc0005b2140, 0xc0005b2140, 0xc0005a80e0)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:258 +0x75c
github.com/tsenart/vegeta/lib.TestResultEncoding.func1.1(0xc55d835b00006a76, 0x80bac5f417ca4970, 0x18ba9afabcb4e705, 0x61627f0e75e5a2bb, 0x34ccda067eceaac1, 0xc0005a2108, 0x1, 0x1, 0xc0005b80a0, 0x9a, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:97 +0x3eb
reflect.Value.call(0x82b380, 0xc00059a150, 0x13, 0x884e0f, 0x4, 0xc00059c0e0, 0x9, 0x9, 0xc00009ee01, 0xed5eb61f8, ...)
    /usr/lib/go/src/reflect/value.go:460 +0x8ab
reflect.Value.Call(0x82b380, 0xc00059a150, 0x13, 0xc00059c0e0, 0x9, 0x9, 0xc00059a180, 0x0, 0x0)
    /usr/lib/go/src/reflect/value.go:321 +0xb4
testing/quick.Check(0x82b380, 0xc00059a150, 0x0, 0xc00009ef70, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:290 +0x27b
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc0001747e0)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac
testing.tRunner(0xc0001747e0, 0xc000021320)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357

goroutine 45 [runnable]:
sync.runtime_SemacquireMutex(0xc1dad8, 0xc0005b6000, 0x1)
    /usr/lib/go/src/runtime/sema.go:71 +0x47
sync.(*Mutex).lockSlow(0xc1dad4)
    /usr/lib/go/src/sync/mutex.go:138 +0xfc
sync.(*Mutex).Lock(...)
    /usr/lib/go/src/sync/mutex.go:81
sync.(*Once).doSlow(0xc1dad0, 0x8a4498)
    /usr/lib/go/src/sync/once.go:62 +0x101
sync.(*Once).Do(...)
    /usr/lib/go/src/sync/once.go:57
time.(*Location).get(0xbf2e80, 0xc0005b6000)
    /usr/lib/go/src/time/zoneinfo.go:85 +0x69
time.Time.abs(0x0, 0xebb41bb4a, 0xbf2e80, 0x0)
    /usr/lib/go/src/time/time.go:459 +0x40
time.Time.date(0x0, 0xebb41bb4a, 0xbf2e80, 0x787000, 0xc0005b6000, 0x4c, 0x80, 0x57aa)
    /usr/lib/go/src/time/time.go:974 +0x3f
time.Time.Year(...)
    /usr/lib/go/src/time/time.go:505
time.Time.MarshalJSON(0x0, 0xebb41bb4a, 0xbf2e80, 0x41914e, 0x7f45d618d308, 0x0, 0x7f45d618d280, 0x2c00000000)
    /usr/lib/go/src/time/time.go:1268 +0x4b
github.com/tsenart/vegeta/lib.easyjsonBd1621b8EncodeGithubComTsenartVegetaLib(0xc0005b0070, 0xc0005a6030, 0x1e, 0x735cf299a1c41cbc, 0x57aa, 0x0, 0xebb41bb4a, 0xbf2e80, 0x25399e970b8f5237, 0x63cf9ab8b4b54cf5, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_easyjson.go:105 +0x14c
github.com/tsenart/vegeta/lib.jsonResult.MarshalEasyJSON(...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_easyjson.go:199
github.com/tsenart/vegeta/lib.NewJSONEncoder.func1(0xc0005b2000, 0xc00059a120, 0xc0005a4080)
    /build/vegeta/src/vegeta-12.8.0/lib/results.go:279 +0xa4
github.com/tsenart/vegeta/lib.TestResultEncoding.func1.1(0x43afc44a000057aa, 0x25399e970b8f5237, 0x735cf299a1c41cbc, 0x778e3024fcc19ab0, 0x63cf9ab8b4b54cf5, 0xc0005a6000, 0x30, 0x30, 0xc0005a6030, 0x1e, ...)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:86 +0x2ed
reflect.Value.call(0x82b380, 0xc00059a000, 0x13, 0x884e0f, 0x4, 0xc00059c000, 0x9, 0x9, 0xc00009f601, 0xed5eb61f8, ...)
    /usr/lib/go/src/reflect/value.go:460 +0x8ab
reflect.Value.Call(0x82b380, 0xc00059a000, 0x13, 0xc00059c000, 0x9, 0x9, 0xc00059a030, 0x0, 0x0)
    /usr/lib/go/src/reflect/value.go:321 +0xb4
testing/quick.Check(0x82b380, 0xc00059a000, 0x0, 0xc00009f770, 0x48a9c6)
    /usr/lib/go/src/testing/quick/quick.go:290 +0x27b
github.com/tsenart/vegeta/lib.TestResultEncoding.func1(0xc000174900)
    /build/vegeta/src/vegeta-12.8.0/lib/results_test.go:69 +0xac
testing.tRunner(0xc000174900, 0xc000021440)
    /usr/lib/go/src/testing/testing.go:992 +0xdc
created by testing.(*T).Run
    /usr/lib/go/src/testing/testing.go:1043 +0x357
FAIL    github.com/tsenart/vegeta/lib   1.307s
ok      github.com/tsenart/vegeta/lib/lttb  2.612s
ok      github.com/tsenart/vegeta/lib/plot  1.385s
FAIL
tsenart commented 1 year ago

Can't reproduce. Has been likely fixed. Please re-open if not.