go-delve / delve

Delve is a debugger for the Go programming language.
MIT License
22.37k stars 2.13k forks source link

`undefined behavior - version of Delve is too old for Go version 1.22.3 (maximum supported version 1.20)` #3754

Closed mbana closed 1 week ago

mbana commented 1 week ago

I am trying to debug a Kubernetes operator built using golang 1.22.3. I am seeing these errors when I run skaffold debug:

...
[manager] API server listening at: [::]:56268
[manager] 2024-06-24T17:29:11Z warning layer=rpc Listening for remote connections (connections are not authenticated nor encrypted)
[manager] 2024-06-24T17:29:12Z error layer=debugger could not patch runtime.mallogc: no type entry found, use 'types' for a list of valid types
[manager] WARNING: undefined behavior - version of Delve is too old for Go version 1.22.3 (maximum supported version 1.20)
...

When I attempt to attach VSCode or use dlv from the command line, I see 1. in the case of VSCode or sometimes 2. in the case of dlv connect 127.0.0.1:56268:

  1. [manager] 2024-06-24T17:33:14Z error layer=rpc writing response:write tcp 127.0.0.1:56268->127.0.0.1:39128: write: broken pipe
  2. [manager] 2024-06-24T17:34:06Z error layer=rpc writing response:write tcp 127.0.0.1:56268->127.0.0.1:45034: use of closed network connection

Environment

$ dlv version
Delve Debugger
Version: 1.22.1
Build: $Id: 0c3470054da6feac5f6dcf3e3e5144a64f7a9a48 $
$ go version 
go version go1.22.3 linux/amd64
aarzilli commented 1 week ago

For whatever reason skaffold is installing version 1.20.x of delve which is too old for the version of go that you are using. You should report this problem to them.

mbana commented 1 week ago

@aarzilli, thanks.

For anyone else watching linked below are the relevant issues: