Kaynağa Gözat

invert pool exists check to always fill on the same path

Chris Bannister 9 yıl önce
ebeveyn
işleme
c771797850
1 değiştirilmiş dosya ile 11 ekleme ve 16 silme
  1. 11 16
      connectionpool.go

+ 11 - 16
connectionpool.go

@@ -241,24 +241,19 @@ func (p *policyConnPool) Close() {
 
 func (p *policyConnPool) addHost(host *HostInfo) {
 	p.mu.Lock()
-
 	pool, ok := p.hostConnPools[host.Peer()]
-	if ok {
-		p.mu.Unlock()
-		pool.fill()
-		return
+	if !ok {
+		pool = newHostConnPool(
+			p.session,
+			host,
+			host.Port(),
+			p.numConns,
+			p.keyspace,
+			p.connPolicy(),
+		)
+
+		p.hostConnPools[host.Peer()] = pool
 	}
-
-	pool = newHostConnPool(
-		p.session,
-		host,
-		host.Port(),
-		p.numConns,
-		p.keyspace,
-		p.connPolicy(),
-	)
-
-	p.hostConnPools[host.Peer()] = pool
 	p.mu.Unlock()
 
 	pool.fill()