|
@@ -300,15 +300,15 @@ func (r *hostPoolHostPolicy) SetPartitioner(partitioner string) {
|
|
|
func (r *hostPoolHostPolicy) Pick(qry *Query) NextHost {
|
|
func (r *hostPoolHostPolicy) Pick(qry *Query) NextHost {
|
|
|
return func() SelectedHost {
|
|
return func() SelectedHost {
|
|
|
r.mu.RLock()
|
|
r.mu.RLock()
|
|
|
|
|
+ defer r.mu.RUnlock()
|
|
|
|
|
+
|
|
|
if len(r.hostMap) == 0 {
|
|
if len(r.hostMap) == 0 {
|
|
|
- r.mu.RUnlock()
|
|
|
|
|
return nil
|
|
return nil
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
hostR := r.hp.Get()
|
|
hostR := r.hp.Get()
|
|
|
host, ok := r.hostMap[hostR.Host()]
|
|
host, ok := r.hostMap[hostR.Host()]
|
|
|
if !ok {
|
|
if !ok {
|
|
|
- r.mu.RUnlock()
|
|
|
|
|
return nil
|
|
return nil
|
|
|
}
|
|
}
|
|
|
|
|
|