From 8a11c5f55a9f2ed52d15c785c7eebdd7f1b32cfe Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Wed, 21 Aug 2019 14:29:26 +0200 Subject: [PATCH] Print stack when runtime panic occurs --- repparser/repparser.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/repparser/repparser.go b/repparser/repparser.go index 6da176b..0715e86 100644 --- a/repparser/repparser.go +++ b/repparser/repparser.go @@ -44,6 +44,7 @@ import ( "errors" "fmt" "log" + "runtime" "sort" "time" @@ -109,6 +110,9 @@ func parseProtected(dec repdecoder.Decoder, commands, mapData bool) (r *rep.Repl defer func() { if r := recover(); r != nil { log.Printf("Parsing error: %v", r) + buf := make([]byte, 2000) + n := runtime.Stack(buf, false) + log.Printf("Stack: %s", buf[:n]) err = ErrParsing } }()