That isn't an http2 panic. That's just the http2 code recovering your Handler's panic and printing it, the same as the http1 server does.
Your panic is actually somewhere in: lib.setupC5Tab(0x7f6fbe169d20, 0xc8201b0d20, 0xc820436d98, 0x7f6fbe169d20, 0xc8201b0dc0, 0x7f6fbe16a2a8, 0xc820339e60, 0x7f6fbe16a5f8, 0xc8201b0e60, 0xc82047be20) /home/sysop/go/src/lib/rhewocompstatus.go:1310 +0x3976 lib.BuildRhewoStatus.func4(0x7f6fbe117538, 0xc8205bc300) /home/sysop/go/src/lib/rhewocompstatus.go:168 +0xc8 github.com/icza/gowut/gwu.handlerFuncWrapper.HandleEvent(0xc82040b5c0, 0x7f6fbe117538, 0xc8205bc300) /home/sysop/go/src/github.com/icza/gowut/gwu/event.go:441 +0x3e github.com/icza/gowut/gwu.(*compImpl).dispatchEvent(0xc820158770, 0x7f6fbe117538, 0xc8205bc300) /home/sysop/go/src/github.com/icza/gowut/gwu/comp.go:307 +0x167 github.com/icza/gowut/gwu.(*timerImpl).dispatchEvent(0xc820158770, 0x7f6fbe117538, 0xc8205bc300) <autogenerated>:1302 +0x60 github.com/icza/gowut/gwu.(*serverImpl).handleEvent(0xc82019e900, 0x7f6fbe1172c0, 0xc8202fa7e0, 0x7f6fbe169998, 0xc8202b4ff0, 0x7f6fbe117170, 0xc82007c2a0, 0xc820148460) /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:815 +0x103e github.com/icza/gowut/gwu.(*serverImpl).serveHTTP(0xc82019e900, 0x7f6fbe117170, 0xc82007c2a0, 0xc820148460) /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:683 +0x1544 github.com/icza/gowut/gwu.(*serverImpl).Start.func1(0x7f6fbe117170, 0xc82007c2a0, 0xc820148460) /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:483 +0x4c On Thu, Oct 6, 2016 at 3:29 AM, Nigel Vickers <rhed...@gmail.com> wrote: > We are migrating an application from go 1.4.1 to 1.6.2. The application > uses a modified Gowut 0.9 as the framework and initially moved without > issue. The application server runs behind a tls sni > proxy/loadbalancer(slt). While running slt at 1.4.1 and the server at 1.6.2 > no problems were encountered. We assume because 1.4.1 couldn’t http2. After > moving the slt to 1.6.2 we are experiencing runtime panics with > http2(protocol attached). Two questions: > > Is the statement that http2 should just run still applicable? > And > Are use cases that fail still of interest as issues? > > We have a “provisional trigger” . A client xmlHttpRequest triggered by an > attached javascript timer requests a component update and reload from the > server. Currently at 10 second intervals. > Irregularly, between the 90th and 99th request the server panics. > > We are bit stuck because we have no experience with http2. Any suggestions > on how to proceed would be welcome. > > Nigel Vickers > > > Rhewo Dev2016/10/05 14:14:24 serveHTTP Incoming: request Path > /mainAppWin/e > Rhewo Dev2016/10/05 14:14:24 serveHTTP Incoming: request Body > &{0xc8205ba120 0xc8200f5180 false 0xc8204e8d00 false} > SessionDump &{LUP_NiaDLsjBFLOpsSUKLa false {63611263456 268951715 > 0xf36ee0} {63611266464 12850383 0xf36ee0} map[mainAppWin:0xc8202b4ff0] > map[groups:[free admin] module:Status Lang:de hiddenPan:0xc820476000 > ips:xx.xx.xx.xx user:fred2 auth:auth] 14400000000000 0xc820303f20} > Rhewo Dev2016/10/05 14:14:24 serveHTTP appName Parts 3 [ mainAppWin e] > Rhewo Dev2016/10/05 14:14:24 Event from comp: 932 event: 15 > 2016/10/05 14:14:24 http2: panic serving xxx.xxx.xxx.xxx:49337: runtime > error: index out of range > goroutine 2962 [running]: > net/http.(*http2serverConn).runHandler.func1(0xc82053df3f, 0xc8200f5180, > 0xc82007c2a0) > /usr/local/go/src/net/http/h2_bundle.go:4050 +0xde > panic(0xb24060, 0xc82000e0d0) > /usr/local/go/src/runtime/panic.go:443 +0x521 > lib.setupC5Tab(0x7f6fbe169d20, 0xc8201b0d20, 0xc820436d98, 0x7f6fbe169d20, > 0xc8201b0dc0, 0x7f6fbe16a2a8, 0xc820339e60, 0x7f6fbe16a5f8, 0xc8201b0e60, > 0xc82047be20) > /home/sysop/go/src/lib/rhewocompstatus.go:1310 +0x3976 > lib.BuildRhewoStatus.func4(0x7f6fbe117538, 0xc8205bc300) > /home/sysop/go/src/lib/rhewocompstatus.go:168 +0xc8 > github.com/icza/gowut/gwu.handlerFuncWrapper.HandleEvent(0xc82040b5c0, > 0x7f6fbe117538, 0xc8205bc300) > /home/sysop/go/src/github.com/icza/gowut/gwu/event.go:441 +0x3e > github.com/icza/gowut/gwu.(*compImpl).dispatchEvent(0xc820158770, > 0x7f6fbe117538, 0xc8205bc300) > /home/sysop/go/src/github.com/icza/gowut/gwu/comp.go:307 +0x167 > github.com/icza/gowut/gwu.(*timerImpl).dispatchEvent(0xc820158770, > 0x7f6fbe117538, 0xc8205bc300) > <autogenerated>:1302 +0x60 > github.com/icza/gowut/gwu.(*serverImpl).handleEvent(0xc82019e900, > 0x7f6fbe1172c0, 0xc8202fa7e0, 0x7f6fbe169998, 0xc8202b4ff0, 0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:815 +0x103e > github.com/icza/gowut/gwu.(*serverImpl).serveHTTP(0xc82019e900, > 0x7f6fbe117170, 0xc82007c2a0, 0xc820148460) > /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:683 +0x1544 > github.com/icza/gowut/gwu.(*serverImpl).Start.func1(0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > /home/sysop/go/src/github.com/icza/gowut/gwu/server.go:483 +0x4c > net/http.HandlerFunc.ServeHTTP(0xc82006d450, 0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > /usr/local/go/src/net/http/server.go:1618 +0x48 > net/http.(*ServeMux).ServeHTTP(0xc820070b10, 0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > /usr/local/go/src/net/http/server.go:1910 +0x213 > net/http.serverHandler.ServeHTTP(0xc8200e4200, 0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > /usr/local/go/src/net/http/server.go:2081 +0x207 > net/http.initNPNRequest.ServeHTTP(0xc8201d4300, 0xc8200e4200, > 0x7f6fbe117170, 0xc82007c2a0, 0xc820148460) > /usr/local/go/src/net/http/server.go:2489 +0x351 > net/http.(*initNPNRequest).ServeHTTP(0xc8201d8b20, 0x7f6fbe117170, > 0xc82007c2a0, 0xc820148460) > <autogenerated>:253 +0xdb > net/http.(Handler).ServeHTTP-fm(0x7f6fbe117170, 0xc82007c2a0, 0xc820 > /usr/local/go/src/net/http/h2_bundle.go:3847 +0x5e > net/http.(*http2serverConn).runHandler(0xc8200f5180, 0xc82007c2a0, 0 > /usr/local/go/src/net/http/h2_bundle.go:4060 +0xad > created by net/http.(*http2serverConn).processHeaderBlockFragment > /usr/local/go/src/net/http/h2_bundle.go:3853 +0x7c3 > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.