Closed Kycklingar closed 4 years ago
Dammit! I thought that was fixed.
Are you seeing any other stack traces? I'm having trouble reproducing this.
I'm pretty sure this isn't a concurrent write/close issue. It looks like a concurrent write issue when negotiating the security transport but I'm not sure how this is possible.
For what it's worth, we're seeing this. But that's IPFS v0.4.19 and on Android.
Thanks. Unfortunately, I'm still going to need to do some work to figure out what's actually causing this.
Are you seeing any other stack traces? I'm having trouble reproducing this.
Nope, that's all I got. It's only ever happened twice, both on the same day.
@Kycklingar Same with me, no panic now.
Interesting... I wonder if this can only be triggered by a non-ipfs websocket client (someone may have been scanning).
@Stebalien seem look like it , but ipfs node should not panic.
I agree. I'm just trying to reproduce it so I can fix it.
@inetic can you reproduce this reliably? Could you try building https://github.com/ipfs/go-ipfs/pull/6263?
I have this crash daily, running with --enable-pubsub-experiment --enable-namesys-pubsub --enable-mplex-experiment
go-ipfs version: 0.4.22-
panic: concurrent write to websocket connection
goroutine 42561526 [running]:
github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc00dad2540, 0x1, 0x0, 0x0, 0x0, 0x1, 0xc00c5fb900)
pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:591 +0x781
github.com/gorilla/websocket.(*messageWriter).Close(0xc00dad2540, 0x11f8649, 0x3)
pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:709 +0x5d
github.com/gorilla/websocket.(*Conn).prepWrite(0xc00740adc0, 0x2, 0x8aa4bd8, 0x3f)
pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:459 +0x214
github.com/gorilla/websocket.(*Conn).NextWriter(0xc00740adc0, 0x2, 0xc01d5dafc0, 0x8aa4bd8, 0x0, 0x1000000014e1fc0)
pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:494 +0x40
github.com/gorilla/websocket.(*Conn).WriteMessage(0xc00740adc0, 0x2, 0xc01d5dafc0, 0x20, 0x40, 0x10, 0xc018931de0)
pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:755 +0x7a
github.com/libp2p/go-ws-transport.(*Conn).Write(0xc00dd0ff50, 0xc01d5dafc0, 0x20, 0x40, 0x10946c0, 0x11d1be0, 0x2ab4620)
pkg/mod/github.com/libp2p/go-ws-transport@v0.0.4/conn.go:74 +0x60
bytes.(*Buffer).WriteTo(0xc00db3a6c0, 0x79393c8, 0xc00dad2450, 0x2ab4620, 0xc00db3a6c0, 0x8ba401)
/usr/lib/go/src/bytes/buffer.go:242 +0xbf
io.copyBuffer(0x79393c8, 0xc00dad2450, 0x14c4920, 0xc00db3a6c0, 0x0, 0x0, 0x0, 0xc018bd7370, 0x438d5d, 0x1382308)
/usr/lib/go/src/io/io.go:384 +0x355
io.Copy(...)
/usr/lib/go/src/io/io.go:364
github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x1200771, 0xa, 0x7d5a580, 0xc00dad2450, 0xc00ec41d40)
pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:27 +0x16b
created by github.com/multiformats/go-multistream.SelectProtoOrFail
pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:23 +0x9c
I also see this crash just running ipfs daemon --enable-pubsub-experiment --enable-namesys-pubsub
go-ipfs version: 0.4.22- Repo version: 7 System version: arm/linux Golang version: go1.12.7
Running on a Raspberry Pi 3B+
@MatthewSteeples could you try running go-ipfs master? We believe this may be fixed.
This issue is also happening with general usage of libp2p websockets. I'm getting this issue outside of go-ipfs as well. https://github.com/libp2p/go-ws-transport/issues/56 is my bug report on go-ws-transport
This is a bug within go-ws-transport and makes websockets completely unusable. I have a custom node that's crashing every 30 minutes due to bug.
OP opened report using go-ws-transport v0.0.2 and it's still present in the latest master branch
Damn. Our gateways were "fixed" by updating but apparently we need to figure out where the issue actually is.
I have the same error. It happened for the first time last Sunday, it had version 0.4.21. I updated to the latest version 0.4.22, and so far it has continued to happen 2 to 3 times per day.
It starts happening more often, almost every hour.
Confirms for 0.4.22 on Windows 10, installed from chocolatey. Encountered that over 4 times in a few hours...
Daemon is started with no other arguments. Seems like it should happen more frequently if the node's serving data.
Same here, happens once or twice a day, ipfs 0.4.22 on ubuntu 18.04: panic: concurrent write to websocket connection goroutine 36495687 [running]: github.com/gorilla/websocket.(messageWriter).flushFrame(0xbc615c0, 0x160d2801, 0x0, 0x0, 0x0, 0x8f06390, 0x0) pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:591 +0x6e4 github.com/gorilla/websocket.(messageWriter).Close(0xbc615c0, 0x17ffdc2c, 0x844390f) pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:709 +0x4c github.com/gorilla/websocket.(Conn).prepWrite(0x21241380, 0x2, 0x0, 0x77) pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:459 +0x1aa github.com/gorilla/websocket.(Conn).NextWriter(0x21241380, 0x2, 0x8f06390, 0x2f, 0x0, 0x1000b01) pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:494 +0x2d github.com/gorilla/websocket.(Conn).WriteMessage(0x21241380, 0x2, 0x1a765dc0, 0x22, 0x40, 0xa026aec, 0xe740c918) pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:755 +0x4f github.com/libp2p/go-ws-transport.(Conn).Write(0xbc612a0, 0x1a765dc0, 0x22, 0x40, 0x8b0d7c0, 0x8c10080, 0xe740c918) pkg/mod/github.com/libp2p/go-ws-transport@v0.0.4/conn.go:74 +0x42 bytes.(*Buffer).WriteTo(0xbc8d520, 0xe7456828, 0xbc61500, 0xe740c918, 0xbc8d520, 0xe7456801, 0x1) /usr/lib/go/src/bytes/buffer.go:242 +0x9e io.copyBuffer(0xe7456828, 0xbc61500, 0x8f05fd0, 0xbc8d520, 0x0, 0x0, 0x0, 0xe71ceb0, 0xe71ceb8, 0x80a36f9, ...) /usr/lib/go/src/io/io.go:384 +0x2d6 io.Copy(...) /usr/lib/go/src/io/io.go:364 github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x8c318ae, 0xc, 0xe74567a8, 0xbc61500, 0xbf981c0) pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:27 +0x136 created by github.com/multiformats/go-multistream.SelectProtoOrFail pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:23 +0x71
same with me too xD . I thought only me got this ipfs 0.4.22
ipfs_1 | Changing user to ipfs
ipfs_1 | ipfs version 0.4.22
ipfs_1 | Found IPFS fs-repo at /data/ipfs
ipfs_1 | Initializing daemon...
ipfs_1 | go-ipfs version: 0.4.22-
ipfs_1 | Repo version: 7
ipfs_1 | System version: amd64/linux
ipfs_1 | Golang version: go1.12.7
ipfs_1 | Swarm listening on /ip4/127.0.0.1/tcp/4001
ipfs_1 | Swarm listening on /ip4/172.25.0.2/tcp/4001
ipfs_1 | Swarm listening on /p2p-circuit
ipfs_1 | Swarm announcing /ip4/127.0.0.1/tcp/4001
ipfs_1 | Swarm announcing /ip4/172.25.0.2/tcp/4001
ipfs_1 | API server listening on /ip4/0.0.0.0/tcp/5001
ipfs_1 | WebUI: http://0.0.0.0:5001/webui
ipfs_1 | Gateway (readonly) server listening on /ip4/0.0.0.0/tcp/8080
ipfs_1 | Daemon is ready
ipfs_1 | panic: concurrent write to websocket connection
ipfs_1 |
ipfs_1 | goroutine 4704739 [running]:
ipfs_1 | github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc008b83a10, 0xc007486c01, 0x0, 0x0, 0x0, 0x1, 0xc007486cf0)
ipfs_1 | /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:591 +0x77a
ipfs_1 | github.com/gorilla/websocket.(*messageWriter).Close(0xc008b83a10, 0x1, 0x1)
ipfs_1 | /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:709 +0x56
ipfs_1 | github.com/gorilla/websocket.(*Conn).prepWrite(0xc0046ae6e0, 0x2, 0xc007486d58, 0x982cc5)
ipfs_1 | /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:459 +0x20d
ipfs_1 | github.com/gorilla/websocket.(*Conn).NextWriter(0xc0046ae6e0, 0x2, 0x1, 0xc007486e10, 0x97af39, 0x100000000000008)
ipfs_1 | /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:494 +0x39
ipfs_1 | github.com/gorilla/websocket.(*Conn).WriteMessage(0xc0046ae6e0, 0x2, 0xc00d99cdc0, 0x22, 0x40, 0x10, 0xc00e387b20)
ipfs_1 | /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:755 +0x73
ipfs_1 | github.com/libp2p/go-ws-transport.(*Conn).Write(0xc008b83680, 0xc00d99cdc0, 0x22, 0x40, 0x163dfa0, 0x1795ea0, 0x7f8f66e2b380)
ipfs_1 | /go/pkg/mod/github.com/libp2p/go-ws-transport@v0.0.4/conn.go:74 +0x59
ipfs_1 | bytes.(*Buffer).WriteTo(0xc008696a20, 0x7f8f66e3a9a8, 0xc008b83980, 0x7f8f66e2b380, 0xc008696a20, 0xe25e01)
ipfs_1 | /usr/local/go/src/bytes/buffer.go:242 +0xb8
ipfs_1 | io.copyBuffer(0x7f8f66e3a9a8, 0xc008b83980, 0x1a98d00, 0xc008696a20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9a59d6)
ipfs_1 | /usr/local/go/src/io/io.go:384 +0x34e
ipfs_1 | io.Copy(...)
ipfs_1 | /usr/local/go/src/io/io.go:364
ipfs_1 | github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x17c705d, 0xc, 0x7f8f66e3a8f0, 0xc008b83980, 0xc0011b3260)
ipfs_1 | /go/pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:27 +0x164
ipfs_1 | created by github.com/multiformats/go-multistream.SelectProtoOrFail
ipfs_1 | /go/pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:23 +0x95
I think this is reference from gorilla websocket https://github.com/googollee/go-socket.io/issues/182
ipfs version 0.4.22 from the Manjaro Linux repo.
go-ipfs version: 0.4.22-4e981576b-dirty Repo version: 7 System version: amd64/linux Golang version: go1.12.8
ipfs daemon
.ipfs mount
.panic: concurrent write to websocket connection
goroutine 2156447 [running]:
github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc001605530, 0x1, 0x0, 0x0, 0x0, 0xc0001325ee, 0xc00732ccf0)
/build/go-ipfs/src/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:591 +0x77c
github.com/gorilla/websocket.(*messageWriter).Close(0xc001605530, 0x558fde865d9a, 0x10)
/build/go-ipfs/src/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:709 +0x58
github.com/gorilla/websocket.(*Conn).prepWrite(0xc001c86dc0, 0x2, 0x0, 0xc00732cd00)
/build/go-ipfs/src/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:459 +0x20f
github.com/gorilla/websocket.(*Conn).NextWriter(0xc001c86dc0, 0x2, 0x7f3828b036f8, 0xc00ab750e0, 0xc00ab750e0, 0x1007f3828b036f8)
/build/go-ipfs/src/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:494 +0x3b
github.com/gorilla/websocket.(*Conn).WriteMessage(0xc001c86dc0, 0x2, 0xc02075d500, 0x22, 0x40, 0x10, 0xc002116500)
/build/go-ipfs/src/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:755 +0x75
github.com/libp2p/go-ws-transport.(*Conn).Write(0xc0016052f0, 0xc02075d500, 0x22, 0x40, 0x558fdfb012c0, 0x558fdfc59200, 0x7f3828ac68c0)
/build/go-ipfs/src/go-ipfs/vendor/github.com/libp2p/go-ws-transport/conn.go:74 +0x5b
bytes.(*Buffer).WriteTo(0xc005c99800, 0x7f38280f0460, 0xc0016054a0, 0x7f3828ac68c0, 0xc005c99800, 0x558fded14b01)
/usr/lib/go/src/bytes/buffer.go:242 +0xba
io.copyBuffer(0x7f38280f0460, 0xc0016054a0, 0x558fdfca2a20, 0xc005c99800, 0x0, 0x0, 0x0, 0x558fdee010ce, 0x2, 0x2)
/usr/lib/go/src/io/io.go:384 +0x350
io.Copy(...)
/usr/lib/go/src/io/io.go:364
github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x558fdf3d17fd, 0xc, 0x7f38280f03a8, 0xc0016054a0, 0xc009b9d5c0)
/build/go-ipfs/src/go-ipfs/vendor/github.com/multiformats/go-multistream/client.go:27 +0x166
created by github.com/multiformats/go-multistream.SelectProtoOrFail
/build/go-ipfs/src/go-ipfs/vendor/github.com/multiformats/go-multistream/client.go:23 +0x97
I was running into this issue very frequently on Windows 10 with go-ipfs 0.4.22 (e.g. more than once per hour), but after upgrading to master this occurs much less frequently. While the issue is not actually fixed, it might be an easy stop gap for those of us having issues.
go-ipfs version: 0.5.0-dev-410e7e878-dirty
Repo version: 7
System version: amd64/windows
Golang version: go1.13
Adding my logs to this thread in case they're useful. Context: started the daemon, added 2 directories (~80GB each), wanted to make sure they were pinned along with a 3rd hash, so I ran the following which eventually resulted in a panic.
The dirty portions of the commit relate to changes in badger and reuseport (to build on this platform). Nothing else should be out of the ordinary. (ref: https://github.com/ipfs/go-ipfs/issues/6642#issue-493470642)
go-ipfs version: 0.5.0-dev-410e7e878-dirty
Repo version: 7
System version: amd64/solaris
Golang version: go1.12.10
ipfs pin add --progress X Y Z
panic: concurrent write to websocket connection
goroutine 2952978 [running]:
github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc0093b90e0, 0xc0093b9501, 0x0, 0x0, 0x0, 0xfffffd7fef2e4d98, 0x0)
src/github.com/ipfs/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:610 +0x62f
github.com/gorilla/websocket.(*messageWriter).Close(0xc0093b90e0, 0x40, 0xc0009cfd00)
src/github.com/ipfs/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:724 +0x62
github.com/gorilla/websocket.(*Conn).beginMessage(0xc01a2f8f20, 0xc0093b9530, 0x2, 0xc0009cfda0, 0x786589)
src/github.com/ipfs/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:473 +0x244
github.com/gorilla/websocket.(*Conn).NextWriter(0xc01a2f8f20, 0x2, 0xfffffd7fee3caf28, 0x38, 0x200, 0x1c0)
src/github.com/ipfs/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:513 +0x53
github.com/gorilla/websocket.(*Conn).WriteMessage(0xc01a2f8f20, 0x2, 0xc016a87fc0, 0x20, 0x40, 0x10, 0xc00bc4bc50)
src/github.com/ipfs/go-ipfs/vendor/github.com/gorilla/websocket/conn.go:766 +0x73
github.com/libp2p/go-ws-transport.(*Conn).Write(0xc00a2a3b90, 0xc016a87fc0, 0x20, 0x40, 0x10924a0, 0x11d3000, 0xfffffd7feecc90e8)
src/github.com/ipfs/go-ipfs/vendor/github.com/libp2p/go-ws-transport/conn.go:74 +0x59
bytes.(*Buffer).WriteTo(0xc0093b9440, 0xfffffd7feeb91958, 0xc00b200120, 0xfffffd7feecc90e8, 0xc0093b9440, 0x927401)
/usr/lib/golang/1.12/src/bytes/buffer.go:242 +0xb8
io.copyBuffer(0xfffffd7feeb91958, 0xc00b200120, 0x14cc680, 0xc0093b9440, 0x0, 0x0, 0x0, 0xc00bc4b340, 0x437cd6, 0x1382758)
/usr/lib/golang/1.12/src/io/io.go:384 +0x34e
io.Copy(...)
/usr/lib/golang/1.12/src/io/io.go:364
github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x1201aa0, 0xa, 0xfffffd7feeb918c0, 0xc00b200120, 0xc01bf6e240)
src/github.com/ipfs/go-ipfs/vendor/github.com/multiformats/go-multistream/client.go:27 +0x164
created by github.com/multiformats/go-multistream.SelectProtoOrFail
src/github.com/ipfs/go-ipfs/vendor/github.com/multiformats/go-multistream/client.go:23 +0x95
Error: unexpected EOF
@vyzo going to cook up some patches to help debug this.
https://github.com/libp2p/go-ws-transport/issues/56 adds instrumentation (and a lock) to catch concurrent writes and print stack traces. Can you try it out and report?
@vyzo could you create a branch of go-ipfs that updates go-ws-transport?
I guess I could do that.
Follow up: (still go-ipfs 410e7e878, but with https://github.com/libp2p/go-ws-transport/commit/e2dded5874d31da646da3d4a4176d90e0df00fb8 vendored) Started the daemon, tried accessing hashes of mine through the gateway, eventually this happened.
Edit: gist with more logging after running for more time.
https://gist.github.com/djdv/1d6cd8c552d2d2983cfe11f7918058d2
I just pushed a debug/issue-6197
branch which has the patch too.
go-ipfs version: 0.4.22 and go-ipfs version: 0.5.0-dev
Also seeing this on my node:
panic: concurrent write to websocket connection goroutine 154743888 [running]: github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc02f8aeb40, 0x20613ed80877501, 0x0, 0x0, 0x0, 0xc01822a4d0, 0xdc2fc7) /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:591 +0x77a github.com/gorilla/websocket.(*messageWriter).Close(0xc02f8aeb40, 0x40, 0xc01822a548) /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:709 +0x56 github.com/gorilla/websocket.(*Conn).prepWrite(0xc00a9cdce0, 0x2, 0x0, 0x0) /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:459 +0x20d github.com/gorilla/websocket.(*Conn).NextWriter(0xc00a9cdce0, 0x2, 0x7f0fdc9430e8, 0x20, 0x200, 0x100) /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:494 +0x39 github.com/gorilla/websocket.(*Conn).WriteMessage(0xc00a9cdce0, 0x2, 0xc030ee7900, 0x22, 0x40, 0x10, 0xc01adfb0d0) /go/pkg/mod/github.com/gorilla/websocket@v1.4.0/conn.go:755 +0x73 github.com/libp2p/go-ws-transport.(*Conn).Write(0xc02f8ae840, 0xc030ee7900, 0x22, 0x40, 0x163dfa0, 0x1795ea0, 0x7f10199f5cc0) /go/pkg/mod/github.com/libp2p/go-ws-transport@v0.0.4/conn.go:74 +0x59 bytes.(*Buffer).WriteTo(0xc02c3e8150, 0x7f101805ca88, 0xc02f8aeab0, 0x7f10199f5cc0, 0xc02c3e8150, 0xe25e01) /usr/local/go/src/bytes/buffer.go:242 +0xb8 io.copyBuffer(0x7f101805ca88, 0xc02f8aeab0, 0x1a98d00, 0xc02c3e8150, 0x0, 0x0, 0x0, 0xc01ad51500, 0x9a59d6, 0x1946a18) /usr/local/go/src/io/io.go:384 +0x34e io.Copy(...) /usr/local/go/src/io/io.go:364 github.com/multiformats/go-multistream.SelectProtoOrFail.func1(0x17c705d, 0xc, 0x7f101805c9f0, 0xc02f8aeab0, 0xc001bb30e0) /go/pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:27 +0x164 created by github.com/multiformats/go-multistream.SelectProtoOrFail /go/pkg/mod/github.com/multiformats/go-multistream@v0.0.4/client.go:23 +0x95
Can you try running with the debug/issue-6197
branch? It should eliminate the panic and also print stack traces to help us debug the issue.
Can you post an image on docker hub? If so I would happily test it. Right now I am just using 0.5.0-dev on master.On Nov 19, 2019 12:28 PM, vyzo notifications@github.com wrote:Can you try running with the debug/issue-6197 branch? It should eliminate the panic and also print stack traces to help us debug the issue.
—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or unsubscribe.
@zquestz Here you go: epiclabs/go-ipfs:issue-6197
https://hub.docker.com/repository/docker/epiclabs/go-ipfs
@vyzo Here is a stack trace of issue-6197
that printed out after some time running:
WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready
goroutine 159924 [running]:
runtime/debug.Stack(0xc0007e9d08, 0x9e3b61, 0x1a60e88)
/usr/local/go/src/runtime/debug/stack.go:24 +0x9d
runtime/debug.PrintStack()
/usr/local/go/src/runtime/debug/stack.go:16 +0x22
github.com/libp2p/go-ws-transport.(*Conn).Write.func1(0xc0019091c0)
/home/jm/go/pkg/mod/github.com/libp2p/go-ws-transport@v0.1.3-0.20191115171038-e2dded5874d3/conn_native.go:82 +0x3d
github.com/libp2p/go-ws-transport.(*Conn).Write(0xc0019091c0, 0xc001fb5500, 0x34, 0x40, 0x34, 0x0, 0x0)
/home/jm/go/pkg/mod/github.com/libp2p/go-ws-transport@v0.1.3-0.20191115171038-e2dded5874d3/conn_native.go:90 +0x18b
github.com/libp2p/go-libp2p-secio.(*etmWriter).WriteMsg(0xc0019093c0, 0xc00349af50, 0x10, 0x10, 0x0, 0x0)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/rw.go:64 +0x2ee
github.com/libp2p/go-libp2p-secio.readWriteMsg.func1(0xc000e33620, 0x7f8991ec8418, 0xc001cb54a0, 0xc00349af50, 0x10, 0x10)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/rw.go:252 +0x4f
created by github.com/libp2p/go-libp2p-secio.readWriteMsg
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/rw.go:251 +0xab
goroutine 159804 [running]:
runtime/debug.Stack(0x9f6391, 0xc0004c98d8, 0x2)
/usr/local/go/src/runtime/debug/stack.go:24 +0x9d
runtime/debug.PrintStack()
/usr/local/go/src/runtime/debug/stack.go:16 +0x22
github.com/libp2p/go-ws-transport.(*Conn).Close(0xc0019091c0, 0x0, 0x0)
/home/jm/go/pkg/mod/github.com/libp2p/go-ws-transport@v0.1.3-0.20191115171038-e2dded5874d3/conn_native.go:98 +0x1cd
github.com/libp2p/go-libp2p-secio.(*secureSession).runHandshake(0xc0007ed800, 0x1beb560, 0xc0012f1620, 0x0, 0x0)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/protocol.go:131 +0x29c
github.com/libp2p/go-libp2p-secio.newSecureSession(0x1beb560, 0xc0012f0c00, 0xc000042210, 0x22, 0x1bf3240, 0xc00093ed20, 0x7f8991e6c508, 0xc002663da0, 0xc002127950, 0x22, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/protocol.go:95 +0x1c5
github.com/libp2p/go-libp2p-secio.(*Transport).SecureOutbound(0xc0001f0360, 0x1beb560, 0xc0012f0c00, 0x7f8991e6c508, 0xc002663da0, 0xc002127950, 0x22, 0xc0001f0360, 0x0, 0x0, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-secio@v0.2.0/transport.go:40 +0x9b
github.com/libp2p/go-conn-security-multistream.(*SSMuxer).SecureOutbound(0xc0001f2190, 0x1beb560, 0xc0012f0c00, 0x7f8991e6c508, 0xc002663da0, 0xc002127950, 0x22, 0x17a5100, 0x1818560, 0xc0004c9a00, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-conn-security-multistream@v0.1.0/ssms.go:56 +0xf2
github.com/libp2p/go-libp2p-transport-upgrader.(*Upgrader).setupSecurity(0xc000214040, 0x1beb560, 0xc0012f0c00, 0x7f8991e6c508, 0xc002663da0, 0xc002127950, 0x22, 0x1bcf500, 0xc00093c6e0, 0x1c011e0, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-transport-upgrader@v0.1.1/upgrader.go:108 +0x10c
github.com/libp2p/go-libp2p-transport-upgrader.(*Upgrader).upgrade(0xc000214040, 0x1beb560, 0xc0012f0c00, 0x1bee720, 0xc0002d2038, 0x1bfd8e0, 0xc002663da0, 0xc002127950, 0x22, 0x0, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-transport-upgrader@v0.1.1/upgrader.go:86 +0x29e
github.com/libp2p/go-libp2p-transport-upgrader.(*Upgrader).UpgradeOutbound(0xc000214040, 0x1beb560, 0xc0012f0c00, 0x1bee720, 0xc0002d2038, 0x1bfd8e0, 0xc002663da0, 0xc002127950, 0x22, 0x0, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-transport-upgrader@v0.1.1/upgrader.go:57 +0xcf
github.com/libp2p/go-ws-transport.(*WebsocketTransport).Dial(0xc0002d2038, 0x1beb560, 0xc0012f0c00, 0x1c011e0, 0xc0020cb280, 0xc002127950, 0x22, 0xc002262580, 0xc0028f9450, 0xdf84755bf, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-ws-transport@v0.1.3-0.20191115171038-e2dded5874d3/websocket.go:63 +0xed
github.com/libp2p/go-libp2p-swarm.(*Swarm).dialAddr(0xc00091f080, 0x1beb560, 0xc0012f0c00, 0xc002127950, 0x22, 0x1c011e0, 0xc0020cb280, 0x2790e60, 0x9e330a, 0xc0012f0c00, ...)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-swarm@v0.2.2/swarm_dial.go:462 +0x219
github.com/libp2p/go-libp2p-swarm.(*dialLimiter).executeDial(0xc000167e50, 0xc002414a80)
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-swarm@v0.2.2/limiter.go:218 +0x1a9
created by github.com/libp2p/go-libp2p-swarm.(*dialLimiter).addCheckFdLimit
/home/jm/go/pkg/mod/github.com/libp2p/go-libp2p-swarm@v0.2.2/limiter.go:168 +0x5fc
Same issue here, go-ipfs 0.4.22 , swarm, api and read only gateway open ...
same here ... gp-ipfs 0.4.22 and 0.4.18
This should be fixed by https://github.com/ipfs/go-ipfs/pull/6804.
Version information:
go-ipfs version: 0.4.20-rc1-495f12c02 Repo version: 7 System version: amd64/linux Golang version: go1.12.2
Type:
panic
Description: