Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/go: 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit #43279

Closed
andig opened this issue Dec 19, 2020 · 8 comments
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided.

Comments

@andig
Copy link
Contributor

andig commented Dec 19, 2020

What version of Go are you using (go version)?

$ go version
go version go1.15.5 darwin/amd64

Does this issue reproduce with the latest release?

only happened once sofar

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/andig/Library/Caches/go-build"
GOENV="/Users/andig/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/andig/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/andig/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.15.5/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.15.5/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/73/89ycv7qn51j4kbm04jsz9b840000gn/T/go-build851741413=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

Compile vscode workspace

What did you expect to see?

no crash

What did you see instead?

Error loading workspace: go [-e -json -compiled=true -test=true -export=false -deps=true -find=false -- github.com/andig/evcc github.com/andig/evcc/charger github.com/andig/evcc/cmd github.com/andig/evcc/meter]: exit status 2: runtime: goroutine stack exceeds 1000000000-byte limit runtime: sp=0xc029d80378 stack=[0xc029d80000, 0xc049d80000] fatal error: stack overflow  runtime stack: runtime.throw(0x163ce44, 0xe) 
    /usr/local/Cellar/go/1.15.5/libexec/src/runtime/panic.go:1116 +0x72 runtime.newstack() 
    /usr/local/Cellar/go/1.15.5/libexec/src/runtime/stack.go:1067 +0x78d runtime.morestack() 
    /usr/local/Cellar/go/1.15.5/libexec/src/runtime/asm_amd64.s:449 +0x8f  goroutine 1 [running]: fmt.(*fmt).writePadding(0xc000778110, 0xfffffffffffffffc) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/format.go:64 +0x17c fp=0xc029d80388 sp=0xc029d80380 pc=0x10e1fbc fmt.(*fmt).pad(0xc000778110, 0xc000778175, 0x7, 0x7) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/format.go:98 +0x265 fp=0xc029d80410 sp=0xc029d80388 pc=0x10e2245 fmt.(*fmt).fmtInteger(0xc000778110, 0x17d152, 0xa, 0x6400000001, 0x163e309, 0x11) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/format.go:319 +0x1fa fp=0xc029d80458 sp=0xc029d80410 pc=0x10e2c9a fmt.(*pp).fmtInteger(0xc0007780d0, 0x17d152, 0x6400000001) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/print.go:379 +0x1fc fp=0xc029d80498 sp=0xc029d80458 pc=0x10e62dc fmt.(*pp).printArg(0xc0007780d0, 0x1587180, 0xc050367f40, 0x64) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/print.go:676 +0x8a5 fp=0xc029d80530 sp=0xc029d80498 pc=0x10e8de5 fmt.(*pp).doPrintf(0xc0007780d0, 0x1637384, 0x5, 0xc029d806a8, 0x1, 0x1) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/print.go:1126 +0x41b fp=0xc029d80618 sp=0xc029d80530 pc=0x10ec09b fmt.Sprintf(0x1637384, 0x5, 0xc029d806a8, 0x1, 0x1, 0xc0503ae6e0, 0xc029d806e0) 
    /usr/local/Cellar/go/1.15.5/libexec/src/fmt/print.go:219 +0x66 fp=0xc029d80670 sp=0xc029d80618 pc=0x10e4fe6 cmd/go/internal/work.(*Builder).NewObjdir(0xc00082e280, 0x203014, 0x203014) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:325 +0x8a fp=0xc029d806e8 sp=0xc029d80670 pc=0x14481ea cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:406 +0x53 fp=0xc029d80780 sp=0xc029d806e8 pc=0x1487b53 cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80810, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d807d0 sp=0xc029d80780 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80840 sp=0xc029d807d0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d808d8 sp=0xc029d80840 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80968, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80928 sp=0xc029d808d8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80998 sp=0xc029d80928 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d80a30 sp=0xc029d80998 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80ac0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80a80 sp=0xc029d80a30 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80af0 sp=0xc029d80a80 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d80b88 sp=0xc029d80af0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80c18, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80bd8 sp=0xc029d80b88 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80c48 sp=0xc029d80bd8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d80ce0 sp=0xc029d80c48 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80d70, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80d30 sp=0xc029d80ce0 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80da0 sp=0xc029d80d30 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d80e38 sp=0xc029d80da0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d80ec8, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80e88 sp=0xc029d80e38 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d80ef8 sp=0xc029d80e88 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d80f90 sp=0xc029d80ef8 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81020, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d80fe0 sp=0xc029d80f90 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81050 sp=0xc029d80fe0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d810e8 sp=0xc029d81050 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81178, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81138 sp=0xc029d810e8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d811a8 sp=0xc029d81138 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81240 sp=0xc029d811a8 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d812d0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81290 sp=0xc029d81240 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81300 sp=0xc029d81290 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81398 sp=0xc029d81300 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81428, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d813e8 sp=0xc029d81398 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81458 sp=0xc029d813e8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d814f0 sp=0xc029d81458 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81580, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81540 sp=0xc029d814f0 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d815b0 sp=0xc029d81540 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81648 sp=0xc029d815b0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d816d8, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81698 sp=0xc029d81648 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81708 sp=0xc029d81698 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d817a0 sp=0xc029d81708 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81830, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d817f0 sp=0xc029d817a0 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81860 sp=0xc029d817f0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d818f8 sp=0xc029d81860 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81988, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81948 sp=0xc029d818f8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d819b8 sp=0xc029d81948 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81a50 sp=0xc029d819b8 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81ae0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81aa0 sp=0xc029d81a50 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81b10 sp=0xc029d81aa0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81ba8 sp=0xc029d81b10 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81c38, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81bf8 sp=0xc029d81ba8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81c68 sp=0xc029d81bf8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81d00 sp=0xc029d81c68 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81d90, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81d50 sp=0xc029d81d00 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81dc0 sp=0xc029d81d50 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81e58 sp=0xc029d81dc0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d81ee8, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d81ea8 sp=0xc029d81e58 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d81f18 sp=0xc029d81ea8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d81fb0 sp=0xc029d81f18 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82040, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82000 sp=0xc029d81fb0 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82070 sp=0xc029d82000 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82108 sp=0xc029d82070 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82198, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82158 sp=0xc029d82108 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d821c8 sp=0xc029d82158 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82260 sp=0xc029d821c8 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d822f0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d822b0 sp=0xc029d82260 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82320 sp=0xc029d822b0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d823b8 sp=0xc029d82320 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82448, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82408 sp=0xc029d823b8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82478 sp=0xc029d82408 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82510 sp=0xc029d82478 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d825a0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82560 sp=0xc029d82510 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d825d0 sp=0xc029d82560 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82668 sp=0xc029d825d0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d826f8, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d826b8 sp=0xc029d82668 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82728 sp=0xc029d826b8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d827c0 sp=0xc029d82728 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82850, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82810 sp=0xc029d827c0 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82880 sp=0xc029d82810 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82918 sp=0xc029d82880 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d829a8, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82968 sp=0xc029d82918 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d829d8 sp=0xc029d82968 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82a70 sp=0xc029d829d8 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82b00, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82ac0 sp=0xc029d82a70 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82b30 sp=0xc029d82ac0 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82bc8 sp=0xc029d82b30 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82c58, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82c18 sp=0xc029d82bc8 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82c88 sp=0xc029d82c18 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82d20 sp=0xc029d82c88 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82db0, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82d70 sp=0xc029d82d20 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82de0 sp=0xc029d82d70 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82e78 sp=0xc029d82de0 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d82f08, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d82ec8 sp=0xc029d82e78 pc=0x1448b5e cmd/go/internal/work.(*Builder).CompileAction(0xc00082e280, 0x1, 0x1, 0xc000a6e000, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:401 +0xd6 fp=0xc029d82f38 sp=0xc029d82ec8 pc=0x1448db6 cmd/go/internal/work.(*Builder).CompileAction.func1(0x15a5f40) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:411 +0x15d fp=0xc029d82fd0 sp=0xc029d82f38 pc=0x1487c5d cmd/go/internal/work.(*Builder).cacheAction(0xc00082e280, 0x16373a2, 0x5, 0xc000a6e000, 0xc029d83060, 0xc0000e1400) 
    /usr/local/Cellar/go/1.15.5/libexec/src/cmd/go/internal/work/action.go:368 +0x9e fp=0xc029d83020 sp=0xc029d82fd0 pc=0x1448b5e ...additional frames elided... 
@gopherbot gopherbot added the gopls Issues related to the Go language server, gopls. label Dec 19, 2020
@andig andig changed the title gopls 0.6.1 crashes go 1.15.5 crashes on compiling workspace on darwin/amd64 Dec 19, 2020
@andig andig changed the title go 1.15.5 crashes on compiling workspace on darwin/amd64 go 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit Dec 19, 2020
@andig
Copy link
Contributor Author

andig commented Dec 19, 2020

There are multiple related issues, all outdated: https://github.com/golang/go/search?q=goroutine+stack+exceeds+1000000000-byte+limit&type=issues

@ALTree
Copy link
Member

ALTree commented Dec 19, 2020

These are not related. "goroutine stack exceeds 1000000000-byte limit" is just the error the Go runtime prints on stack overflow.

In this case, it seems we're stuck in a loop that goes

cmd/go/internal/work.(*Builder).CompileAction.func1
cmd/go/internal/work.(*Builder).cacheAction
cmd/go/internal/work.(*Builder).CompileAction
[ and repeat ]

cc @bcmills @jayconrod

@ALTree ALTree added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Dec 19, 2020
@ALTree ALTree changed the title go 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit cm/go: 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit Dec 19, 2020
@ALTree ALTree changed the title cm/go: 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit cmd/go: 1.15.5 crashes on compiling workspace on darwin/amd64 with goroutine stack exceeds 1000000000-byte limit Dec 19, 2020
@ALTree ALTree removed the gopls Issues related to the Go language server, gopls. label Dec 19, 2020
@andig
Copy link
Contributor Author

andig commented Dec 19, 2020

Still haven't seen this repeated and I have been on 1.15.5 since it was released.

@jayconrod
Copy link
Contributor

This recursion loop indicates that the go command ran into a cycle in the package graph while generating actions. We check for cycles earlier when loading the package graph though, so I'm not really sure how this would happen.

@andig Could you tell us more about what you were doing when this happened? Just the stack may not be enough to reproduce this and track the problem down unfortunately.

@jayconrod jayconrod added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Dec 21, 2020
@andig
Copy link
Contributor Author

andig commented Dec 23, 2020

I was refactoring code, i.e. moving stuff between packages and updating references all in VS Code. It‘s the first time I‘ve ever seen this and never since.

Given there‘s apparently too little content to do anything I‘d suggest to close and I‘ll keep an eye open.

@jayconrod
Copy link
Contributor

@andig I'll close this then. Please comment though if you see it again.

@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2021

This could be due to the same underlying bug as #25830. The file and line numbers are different, but the pattern of offsets looks like it could plausibly be the same cycle of calls.

@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2021

Duplicate of #25830

@bcmills bcmills marked this as a duplicate of #25830 Feb 4, 2021
@golang golang locked and limited conversation to collaborators Feb 4, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided.
Projects
None yet
Development

No branches or pull requests

5 participants