Closed richb-hanover closed 2 years ago
Similar here on Ubuntu 20LTS after a git pull (and in a completely freshly cloned repository):
moeller@work-horse:~/CODE/TMP/goresponsiveness$ ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
05-05-2022 20:04:13 UTC Go Responsiveness to mensura.cdn-apple.com:443...
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x676cd5]
goroutine 22 [running]:
main.saturate.func1()
/home/moeller/CODE/TMP/goresponsiveness/networkQuality.go:248 +0xb5
created by main.saturate
/home/moeller/CODE/TMP/goresponsiveness/networkQuality.go:237 +0xf8
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x676cd5]
goroutine 21 [running]:
main.saturate.func1()
/home/moeller/CODE/TMP/goresponsiveness/networkQuality.go:248 +0xb5
created by main.saturate
/home/moeller/CODE/TMP/goresponsiveness/networkQuality.go:237 +0xf8
on macos 11.6.5 (so too old to run apple's version):
bash-3.2$ ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
05-05-2022 20:06:01 UTC Go Responsiveness to mensura.cdn-apple.com:443...
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x1270ad5]
goroutine 38 [running]:
main.saturate.func1()
/Users/smoeller/TECH_KRAM/CODE/goresponsiveness/networkQuality.go:248 +0xb5
created by main.saturate
/Users/smoeller/TECH_KRAM/CODE/goresponsiveness/networkQuality.go:237 +0xf8
bash-3.2$
--config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
@moeller0 Sorry about this! In 7113efcf716b5cce94869a29eff37aee0be10808 there is a fix! Thanks for the feedback!
Will
I am having trouble with build 2a9feb8
I ran
docker build -t goresp .
and got an errornote: module requires Go 1.18
Here's the output... => ERROR [6/6] RUN go build -o networkQuality networkQuality.go 1.7s ------ > [6/6] RUN go build -o networkQuality networkQuality.go: #10 0.408 # github.com/network-quality/goresponsiveness/utilities #10 0.408 utilities/utilities.go:82:17: syntax error: unexpected any, expecting ] #10 0.408 utilities/utilities.go:87:6: missing function body #10 0.408 utilities/utilities.go:87:10: syntax error: unexpected [, expecting ( #10 0.408 utilities/utilities.go:91:6: missing function body #10 0.408 utilities/utilities.go:91:10: syntax error: unexpected [, expecting ( #10 0.408 utilities/utilities.go:95:6: missing function body #10 0.408 utilities/utilities.go:95:12: syntax error: unexpected [, expecting ( #10 0.408 utilities/utilities.go:99:12: syntax error: unexpected [, expecting ( #10 0.408 utilities/utilities.go:103:13: syntax error: unexpected [, expecting ( #10 0.408 utilities/utilities.go:110:24: syntax error: unexpected [, expecting comma or ) #10 0.408 utilities/utilities.go:95:6: too many errors #10 0.408 note: module requires Go 1.18 ------ executor failed running [/bin/sh -c go build -o networkQuality networkQuality.go]: exit code: 2
Ahah! sez I. So I updated the Dockerfile to use
FROM golang:1.18.1-alpine3.15
, and it built the container without complaint.When I ran
docker run goresp
, I got the following segfault:√ goresponsiveness-1 % docker run goresp 05-05-2022 10:41:59 UTC Go Responsiveness to mensura.cdn-apple.com:443... panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x676cb5] goroutine 26 [running]: main.saturate.func1() /goresponsiveness/networkQuality.go:248 +0xb5 created by main.saturate /goresponsiveness/networkQuality.go:237 +0xf8
What other troubleshooting info could I provide? Many thanks.
@richb-hanover Thanks, as well, for the feedback! I hope that the version in 7113efcf716b5cce94869a29eff37aee0be10808 fixes the issue! Just let me know and we can close this issue!
Thanks again for everything!
Both Linux and macos now result in working tests. No time right no to scrutinize the results, but the crash seems fixed. Thanks!
user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
05-06-2022 05:58:56 UTC Go Responsiveness to mensura.cdn-apple.com:443...
Download: 89.624 Mbps ( 11.203 MBps), using 12 parallel connections.
Upload: 26.156 Mbps ( 3.270 MBps), using 12 parallel connections.
Total RTTs measured: 25
RPM: 3983
real 0m5.486s
user 0m1.170s
sys 0m1.205s
user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
05-06-2022 05:59:16 UTC Go Responsiveness to mensura.cdn-apple.com:443...
Download: 89.890 Mbps ( 11.236 MBps), using 12 parallel connections.
Upload: 26.938 Mbps ( 3.367 MBps), using 20 parallel connections.
Total RTTs measured: 25
RPM: 4391
real 0m8.423s
user 0m1.812s
sys 0m1.864s
user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config
05-06-2022 06:04:13 UTC Go Responsiveness to mensura.cdn-apple.com:443...
Download: 89.718 Mbps ( 11.215 MBps), using 12 parallel connections.
Upload: 26.312 Mbps ( 3.289 MBps), using 12 parallel connections.
Total RTTs measured: 25
RPM: 4147
real 0m5.481s
user 0m1.178s
sys 0m1.155s
Timing still seems wrong, with 12 flows per direction and bi-directional the run time should be around 12 seconds, but certainly >= 8ms which it only is occasionally.
user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config 05-06-2022 05:58:56 UTC Go Responsiveness to mensura.cdn-apple.com:443... Download: 89.624 Mbps ( 11.203 MBps), using 12 parallel connections. Upload: 26.156 Mbps ( 3.270 MBps), using 12 parallel connections. Total RTTs measured: 25 RPM: 3983 real 0m5.486s user 0m1.170s sys 0m1.205s user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config 05-06-2022 05:59:16 UTC Go Responsiveness to mensura.cdn-apple.com:443... Download: 89.890 Mbps ( 11.236 MBps), using 12 parallel connections. Upload: 26.938 Mbps ( 3.367 MBps), using 20 parallel connections. Total RTTs measured: 25 RPM: 4391 real 0m8.423s user 0m1.812s sys 0m1.864s user@work-horse:~/CODE/goresponsiveness$ time ./networkQuality --config mensura.cdn-apple.com --port 443 --path /api/v1/gm/config 05-06-2022 06:04:13 UTC Go Responsiveness to mensura.cdn-apple.com:443... Download: 89.718 Mbps ( 11.215 MBps), using 12 parallel connections. Upload: 26.312 Mbps ( 3.289 MBps), using 12 parallel connections. Total RTTs measured: 25 RPM: 4147 real 0m5.481s user 0m1.178s sys 0m1.155s
Timing still seems wrong, with 12 flows per direction and bi-directional the run time should be around 12 seconds, but certainly >= 8ms which it only is occasionally.
I am going to close this one and redirect your timing issue to a different bug just so I can keep thing straight in my little head! I am going to set up some parallel test infrastructure tomorrow. I will keep you posted! Thanks again for everything!
Will
I can confirm that the crash no longer happens. I will contribute new results of the test to other tickets. Thanks!
I am having trouble with build https://github.com/network-quality/goresponsiveness/commit/2a9feb82b55481308c0f6aa9d813e9021b0333ef
I ran
docker build -t goresp .
and got an errornote: module requires Go 1.18
Here's the outputAhah! sez I. So I updated the Dockerfile to use
FROM golang:1.18.1-alpine3.15
, and it built the container without complaint.When I ran
docker run goresp
, I got the following segfault:What other troubleshooting info could I provide? Many thanks.