Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

weird goroutine hang #1358

Closed
whyrusleeping opened this issue Jun 11, 2015 · 4 comments
Closed

weird goroutine hang #1358

whyrusleeping opened this issue Jun 11, 2015 · 4 comments
Labels
kind/bug A bug in existing code (including security flaws)

Comments

@whyrusleeping
Copy link
Member

This goroutine was found in mars' out of memory stack dump. Something really weird is going on here.

goroutine 34095098 [select, 2677 minutes]:
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/hashicorp/yamux.(*Session).OpenStream(0xc20cc48000, 0xc20fd52d80, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/hashicorp/yamux/session.go:145 +0x3c7
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/transport/yamux.(*conn).OpenStream(0xc20cc48000, 0x0, 0x0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/transport/yamux/yamux.go:48 +0x4c
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream.(*Swarm).createStream(0xc20a03bad0, 0xc20d9b72d0, 0xc20d9b72d0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/conn.go:216 +0x59
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream.(*Swarm).NewStreamWithConn(0xc20a03bad0, 0xc20d9b72d0, 0x1, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/swarm.go:306 +0x541
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream.(*Swarm).newStreamSelectConn(0xc20a03bad0, 0xf0a620, 0xc20c6357c0, 0x1, 0x1, 0x1, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/swarm.go:251 +0x1ac
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream.(*Swarm).NewStreamWithGroup(0xc20a03bad0, 0xc8e120, 0xc213d3e340, 0xc213d3e340, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-peerstream/swarm.go:273 +0xb6
github.com/ipfs/go-ipfs/p2p/net/swarm.(*Swarm).NewStreamWithPeer(0xc20a04d810, 0xc20a84de60, 0x22, 0xc212afe2c0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/p2p/net/swarm/swarm.go:164 +0x371
github.com/ipfs/go-ipfs/p2p/net/swarm.(*Network).NewStream(0xc20a04d810, 0xc20a84de60, 0x22, 0x0, 0x0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/p2p/net/swarm/swarm_net.go:137 +0x1bf
github.com/ipfs/go-ipfs/p2p/host/basic.(*BasicHost).NewStream(0xc20a065860, 0xd5c930, 0x9, 0xc20a84de60, 0x22, 0x0, 0x0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/p2p/host/basic/basic_host.go:156 +0xa9
github.com/ipfs/go-ipfs/routing/dht.(*IpfsDHT).sendRequest(0xc20a058750, 0x7f20a2606e00, 0xc20ef9ed40, 0xc20a84de60, 0x22, 0xc210bd0310, 0x0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/dht_net.go:75 +0x1ac
github.com/ipfs/go-ipfs/routing/dht.(*IpfsDHT).getValueSingle(0xc20a058750, 0x7f20a2606e00, 0xc20ef9ed40, 0xc20a84de60, 0x22, 0xc212383ec0, 0x26, 0x0, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/dht.go:211 +0x28e
github.com/ipfs/go-ipfs/routing/dht.(*IpfsDHT).getValueOrPeers(0xc20a058750, 0x7f20a2606e00, 0xc20ef9ed40, 0xc20a84de60, 0x22, 0xc212383ec0, 0x26, 0x0, 0x0, 0x0, ...)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/dht.go:176 +0xe1
github.com/ipfs/go-ipfs/routing/dht.func·018(0x7f20a2606e00, 0xc20ef9ed40, 0xc20a84de60, 0x22, 0x1, 0x0, 0x0)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/routing.go:107 +0x13d
github.com/ipfs/go-ipfs/routing/dht.(*dhtQueryRunner).queryPeer(0xc20eea2d80, 0x7f20a2604a10, 0xc20caac500, 0xc20a84de60, 0x22)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/query.go:254 +0x7f1
github.com/ipfs/go-ipfs/routing/dht.func·015(0x7f20a2604a10, 0xc20caac500)
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/routing/dht/query.go:198 +0x4b
github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/goprocess.func·005()
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/goprocess/impl-mutex.go:110 +0x70
created by github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/goprocess.(*process).Go
    /home/whyrusleeping/gopkg/src/github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/goprocess/impl-mutex.go:113 +0x3f3
@jbenet
Copy link
Member

jbenet commented Jun 12, 2015

@whyrusleeping what's the weird part?

@whyrusleeping
Copy link
Member Author

OpenStream hanging for 2677 minutes.

@jbenet
Copy link
Member

jbenet commented Jun 14, 2015

Hm. Wonder if conn was fully dead or not. (Ie keepalives or not)

@em-ly em-ly added the kind/bug A bug in existing code (including security flaws) label Aug 25, 2016
@whyrusleeping
Copy link
Member Author

was likely utp or yamux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug A bug in existing code (including security flaws)
Projects
None yet
Development

No branches or pull requests

3 participants