Skip to content
New issue

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

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

Already on GitHub? # to your account

panicparse no longer works with backtraces from go1.22 and go1.23 #90

Open
ncw opened this issue Nov 27, 2024 · 3 comments
Open

panicparse no longer works with backtraces from go1.22 and go1.23 #90

ncw opened this issue Nov 27, 2024 · 3 comments

Comments

@ncw
Copy link

ncw commented Nov 27, 2024

I wrote a simple program and killed it with SIGQUIT with various go versions and captured the backtraces

package main

import "time"

func main() {
	time.Sleep(time.Minute)
}

With go1.21.4 panic parse works fine backtrace.go1.21.4.log

However with go1.22.5 backtrace.go1.22.5.log and go 1.23.2 backtrace.go.1.23.2.log panicparse does not recognise the backtrace and does nothing.

I think this change in the backtrace is probably the breaking one but I haven't looked in the source yet!

-goroutine 0 [idle]:
+goroutine 0 gp=0x4ded80 m=0 mp=0x4df340 [idle]:
@maruel
Copy link
Owner

maruel commented Nov 28, 2024

Thanks, indeed. I'll gladly accept PRs or I'll work on this relatively soon.

@maruel
Copy link
Owner

maruel commented Nov 29, 2024

Tests started failing in go1.21.

Fails:

go install golang.org/dl/go1.21.13@latest
go1.21.13 download
go1.21.13 test ./...

Succeeds:

go install golang.org/dl/go1.20.14@latest
go1.20.14 download
go1.20.14 test ./...

@juzeon
Copy link

juzeon commented Jan 10, 2025

This might be a useful workaround at the moment: search in regexp for (goroutine \d+) gp=.+ m=.*(mp=.+)* \[ and replace them with $1 \[.

图片

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

No branches or pull requests

3 participants