瀏覽代碼

prevent deadlock with fill and node down

Chris Bannister 10 年之前
父節點
當前提交
f145b65bb9
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      connectionpool.go

+ 3 - 1
connectionpool.go

@@ -401,7 +401,9 @@ func (pool *hostConnPool) fill() {
 			// probably unreachable host
 			go pool.fillingStopped()
 
-			pool.session.handleNodeDown(net.ParseIP(pool.host.Peer()), pool.port)
+			// this is calle with the connetion pool mutex held, this call will
+			// then recursivly try to lock it again. FIXME
+			go pool.session.handleNodeDown(net.ParseIP(pool.host.Peer()), pool.port)
 			return
 		}