Skip to content
This repository has been archived by the owner on Feb 27, 2023. It is now read-only.

supernode 1.0.0 http: panic serving #1198

Closed
vissible opened this issue Jan 21, 2020 · 1 comment · Fixed by #1253
Closed

supernode 1.0.0 http: panic serving #1198

vissible opened this issue Jan 21, 2020 · 1 comment · Fixed by #1253
Labels
kind/panic Any issue reporting containing a panic priority/P1 this is high priority that all maintainers should stop to handle this issue

Comments

@vissible
Copy link

vissible commented Jan 21, 2020

Supernode finds the following error. The client side shows that some FS layers can be pulled and stuck later.

// supernode发现如下报错,client端表现是部分fs layer可以拉取,之后会卡住。

supernode    | 2020/01/21 08:57:00 http: panic serving x.x.x.x:port: runtime error: invalid memory address or nil pointer dereference
supernode    | goroutine 118468 [running]:
supernode    | net/http.(*conn).serve.func1(0xc0004c9360)
supernode    | 	/usr/local/go/src/net/http/server.go:1769 +0x139
supernode    | panic(0xb00b00, 0x11dc6a0)
supernode    | 	/usr/local/go/src/runtime/panic.go:522 +0x1b5
supernode    | github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task.(*Manager).parseAvailablePeers(0xc0002c46c0, 0xcccfe0, 0xc0008a8900, 0xc0012960c6, 0x22, 0xc0002c4480, 0xc0003d7000, 0xbbc43b, 0x7, 0x0, ...)
supernode    | 	/go/src/github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task/manager_util.go:345 +0x4dc
supernode    | github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task.(*Manager).processTaskStart(0xc0002c46c0, 0xcccfe0, 0xc0008a8900, 0xc0012960c6, 0x22, 0xc0002c4480, 0xc0003d7000, 0xc0003d7000, 0x0, 0x0, ...)
supernode    | 	/go/src/github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task/manager_util.go:274 +0x208
supernode    | github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task.(*Manager).GetPieces(0xc0002c46c0, 0xcccfe0, 0xc0008a8900, 0xc001296115, 0x40, 0xc0012960c6, 0x22, 0xc0008a8940, 0x410900, 0x0, ...)
supernode    | 	/go/src/github.com/dragonflyoss/Dragonfly/supernode/daemon/mgr/task/manager.go:255 +0x88c
supernode    | github.com/dragonflyoss/Dragonfly/supernode/server.(*Server).pullPieceTask(0xc0002ac980, 0xcccfe0, 0xc0008a8900, 0x7f401743c810, 0xc0014f7270, 0xc0002a8a00, 0xc0008a8900, 0xc00092f8d0)
supernode    | 	/go/src/github.com/dragonflyoss/Dragonfly/supernode/server/0.3_bridge.go:165 +0x29c
supernode    | github.com/dragonflyoss/Dragonfly/supernode/server.filter.func1(0x7f401743c810, 0xc0014f7270, 0xc0002a8a00)
supernode    | 	/go/src/github.com/dragonflyoss/Dragonfly/supernode/server/router.go:102 +0xa9
supernode    | net/http.HandlerFunc.ServeHTTP(0xc0002fa220, 0x7f401743c810, 0xc0014f7270, 0xc0002a8a00)
supernode    | 	/usr/local/go/src/net/http/server.go:1995 +0x44
supernode    | github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerResponseSize.func1(0x7f401743c810, 0xc0014f7220, 0xc0002a8a00)
supernode    | 	/go/pkg/mod/github.com/prometheus/[email protected]/prometheus/promhttp/instrument_server.go:196 +0xe9
supernode    | net/http.HandlerFunc.ServeHTTP(0xc0003a6f90, 0x7f401743c810, 0xc0014f7220, 0xc0002a8a00)
supernode    | 	/usr/local/go/src/net/http/server.go:1995 +0x44
supernode    | github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerRequestSize.func2(0x7f401743c810, 0xc0014f7220, 0xc0002a8a00)
supernode    | 	/go/pkg/mod/github.com/prometheus/[email protected]/prometheus/promhttp/instrument_server.go:170 +0x73
supernode    | net/http.HandlerFunc.ServeHTTP(0xc0003a7080, 0x7f401743c810, 0xc0014f7220, 0xc0002a8a00)
supernode    | 	/usr/local/go/src/net/http/server.go:1995 +0x44
supernode    | github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerCounter.func1(0xccaa60, 0xc0001cc620, 0xc0002a8a00)
supernode    | 	/go/pkg/mod/github.com/prometheus/[email protected]/prometheus/promhttp/instrument_server.go:100 +0xda
supernode    | net/http.HandlerFunc.ServeHTTP(0xc0003a71d0, 0xccaa60, 0xc0001cc620, 0xc0002a8a00)
supernode    | 	/usr/local/go/src/net/http/server.go:1995 +0x44
supernode    | github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerDuration.func2(0xccaa60, 0xc0001cc620, 0xc0002a8a00)
supernode    | 	/go/pkg/mod/github.com/prometheus/[email protected]/prometheus/promhttp/instrument_server.go:76 +0xb5
supernode    | net/http.HandlerFunc.ServeHTTP(0xc0003a72c0, 0xccaa60, 0xc0001cc620, 0xc0002a8a00)
supernode    | 	/usr/local/go/src/net/http/server.go:1995 +0x44
supernode    | github.com/gorilla/mux.(*Router).ServeHTTP(0xc0003c64e0, 0xccaa60, 0xc0001cc620, 0xc0002a8a00)
supernode    | 	/go/pkg/mod/github.com/gorilla/[email protected]/mux.go:133 +0x105
supernode    | net/http.serverHandler.ServeHTTP(0xc0001c84e0, 0xccaa60, 0xc0001cc620, 0xc0002a8700)
supernode    | 	/usr/local/go/src/net/http/server.go:2774 +0xa8
supernode    | net/http.(*conn).serve(0xc0004c9360, 0xcccfe0, 0xc000336b80)
supernode    | 	/usr/local/go/src/net/http/server.go:1878 +0x851
supernode    | created by net/http.(*Server).Serve
supernode    | 	/usr/local/go/src/net/http/server.go:2884 +0x2f4

!!!!WE STRONGLY ENCOURAGE YOU TO DESCRIBE YOUR ISSUE IN ENGLISH!!!!

@pouchrobot pouchrobot added kind/panic Any issue reporting containing a panic priority/P1 this is high priority that all maintainers should stop to handle this issue labels Jan 21, 2020
@pouchrobot
Copy link
Collaborator

Thanks for your report, @vissible
😱 This is a priority/P1 issue which is highest.
Seems to be severe enough.
ping @dragonflyoss/Dragonfly , PTAL.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/panic Any issue reporting containing a panic priority/P1 this is high priority that all maintainers should stop to handle this issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants