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

Command failed: EOF when hitting a breakpoint #3554

Closed
gitkrtuck opened this issue Nov 6, 2023 · 1 comment
Closed

Command failed: EOF when hitting a breakpoint #3554

gitkrtuck opened this issue Nov 6, 2023 · 1 comment

Comments

@gitkrtuck
Copy link

gitkrtuck commented Nov 6, 2023

What version of Delve are you using (dlv version)? v1.9.1, v1.20.1, (and v1.8.0 w/go1.18.10)
What version of Go are you using? (go version)? go1.19.6, go1.21.0, go1.21.1, go1.19.10
What operating system and processor architecture are you using? macOS 14.1 (23B74) Sonoma. (can't go back to Ventura for now), 2.6 GHz 6-Core Intel Core i7 MacBook Pro
What did you do?

  • Debugging with breakpoints was working with dlv, go, and MacOS Ventura until upgrading to Sonoma.
  • Using a very simple go file (see session below)...
  • After ugrade, in VSCode setting a breakpoint seemed ok, but running would appear to hang. Upgrading VSCode showed errors:
     unexpected fault address 0x10ad4c0
     2023-11-05T21:52:06-06:00 error layer=dap runtime error: EOF
     Unable to retrieve goroutines: write tcp 127.0.0.1:53046->127.0.0.1:53048: write: broken pipe

  • tried "debugAdapter":"legacy" in settings, then errors displayed in VSCode are:
     unexpected fault address 0x10ad4c0
     Failed to continue - EOF
     Unhandled error in debug adapter: UnhandledPromiseRejection: This error originated either by throwing inside of an async 
```function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "EOF".
  • tried dlv command line, then errors are:
     Command failed: EOF
     could not detach process 45204: write tcp 127.0.0.1:52722->127.0.0.1:52723: write: broken pipe

What did you expect to see? Hit breakpoint without without error
What did you see instead? In VSCode, the dap did not communicate. With dlv command line, continue first time fails to break, and continue again displays broken pipe. However, not setting a breakpoint allows process to complete.

  • I also tried re-installing Xcode after finding a 2019 bug report with similar symptom
  • other people in my organization running Sonoma do not have this issue. Could it be some go configuration I need??

Here is the command-line session with a simple file:

MacBook:tstproj myuser$ dlv debug main.go
Type 'help' for list of commands.
(dlv) list ./main.go:6
Showing /Users/myuser/Desktop/code/tstproj/main.go:6 (PC: 0x10b2b94)
     1:	package main
     2:	
     3:	import "fmt"
     4:	
     5:	func main() {
     6:		fmt.Println("My Thing")
     7:	}
(dlv) b ./main.go:6
Breakpoint 1 set at 0x10b2b94 for main.main() ./main.go:6
(dlv) breakpoints
Breakpoint runtime-fatal-throw (enabled) at 0x1036d80,0x1036e80 for (multiple functions)() /usr/local/go/src/runtime/panic.go:1059 (0)
Breakpoint unrecovered-panic (enabled) at 0x1037240 for runtime.fatalpanic() /usr/local/go/src/runtime/panic.go:1143 (0)
	print runtime.curg._panic.arg
Breakpoint 1 (enabled) at 0x10b2b94 for main.main() ./main.go:6 (0)
(dlv) continue
> main.main() ./main.go:6 (PC: 0x10b2b94)
Command failed: EOF
(dlv) continue
> main.main() ./main.go:6 (PC: 0x10b2b94)
Command failed: write tcp 127.0.0.1:52580->127.0.0.1:52582: write: broken pipe
(dlv) clearall
Couldn't delete breakpoint 1 at 0x10b2b94 for main.main() ./main.go:6: unable to clear breakpoint 1: write tcp 127.0.0.1:52580->127.0.0.1:52582: write: broken pipe
Breakpoint 1 cleared at 0x10b2b94 for main.main() ./main.go:6
(dlv) continue
> main.main() ./main.go:6 (PC: 0x10b2b94)
Command failed: write tcp 127.0.0.1:52580->127.0.0.1:52582: write: broken pipe
(dlv) r
Command failed: could not detach process 44781: write tcp 127.0.0.1:52580->127.0.0.1:52582: write: broken pipe
(dlv) exit
could not detach process 44781: write tcp 127.0.0.1:52580->127.0.0.1:52582: write: broken pipe

#  Runs to completion without a breakpoint: 
MacBook:tstproj myuser$ dlv debug main.go
Type 'help' for list of commands.
(dlv) continue
My Thing
Process 44841 has exited with status 0
(dlv) exit
MacBook:tstproj myuser$ 


@aarzilli
Copy link
Member

aarzilli commented Nov 6, 2023

Duplicate of #3538, #3519

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants