netpoll icon indicating copy to clipboard operation
netpoll copied to clipboard

fd_operator.go:62 panic

Open gh73962 opened this issue 1 year ago • 7 comments
trafficstars

Describe the bug 生产环境的websocket server 最近偶尔会在netpoll.Connection Close()调用后这样

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x115d016]

goroutine 4340 [running]:
github.com/cloudwego/netpoll.(*FDOperator).Free(0xc00c49f738?)
	/root/go/pkg/mod/github.com/cloudwego/[email protected]/fd_operator.go:62 +0x16
github.com/cloudwego/netpoll.(*connection).init.(*connection).initFinalizer.func1({0x4103c5?, 0xc002b52800?})
	/root/go/pkg/mod/github.com/cloudwego/[email protected]/connection_impl.go:373 +0x45
github.com/cloudwego/netpoll.(*connection).closeCallback(0x0?, 0x0?, 0x0?)
	/root/go/pkg/mod/github.com/cloudwego/[email protected]/connection_onevent.go:321 +0x21f
github.com/cloudwego/netpoll.(*connection).onClose(0xc00158d520?)
	/root/go/pkg/mod/github.com/cloudwego/[email protected]/connection_reactor.go:67 +0x105
github.com/cloudwego/netpoll.(*connection).Close(0x989680?)
	/root/go/pkg/mod/github.com/cloudwego/[email protected]/connection_impl.go:299 +0x13

0.6.0 之前的版本用了1年多(no feature)没有这个情况发生

To Reproduce unknown

Additional context run on almalinux:9.2 x86_64 有什么建议排查这个问题吗?

gh73962 avatar May 13 '24 09:05 gh73962

@gh73962 「最近偶尔」的意思是,最近你们升级过了吗还是什么?

joway avatar May 13 '24 11:05 joway

4月从0.5.1升级到0.6 然后开始出现这个问题,大概出现了3次

gh73962 avatar May 14 '24 01:05 gh73962

@gh73962 比较奇怪,内部至少也有相当大规模的实例在使用了,怀疑和使用姿势有关系。你们的websocket是自己实现的还是用的什么框架?

joway avatar May 14 '24 06:05 joway

用的github.com/gobwas/ws读写数据和帧控制, 接的v0.3.2版本那会ws example没有,都是自己实现的 @joway

gh73962 avatar May 15 '24 08:05 gh73962

conn 用的github.com/orcaman/concurrent-map/v2存储的

gh73962 avatar May 15 '24 08:05 gh73962

我先在close前检查一下IsActive()看看 现场pod stdout 就是截图那点内容, 其他没截取的就是配置信息什么的

gh73962 avatar May 15 '24 08:05 gh73962

@gh73962 ok。如果没有敏感信息的话,你把二进制和 coredump 后的文件可以发我邮箱,也能debug 。

joway avatar May 16 '24 03:05 joway