Skip to content

Commit 79d2c0e

Browse files
authored
Merge pull request #1072 from go-redis/fix/cmds-info-get-or-create
Fix cmdsInfo to create node
2 parents 9836151 + 459184c commit 79d2c0e

File tree

1 file changed

+21
-21
lines changed

1 file changed

+21
-21
lines changed

cluster.go

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -326,20 +326,7 @@ func (c *clusterNodes) GC(generation uint32) {
326326
}
327327

328328
func (c *clusterNodes) Get(addr string) (*clusterNode, error) {
329-
var node *clusterNode
330-
var err error
331-
c.mu.RLock()
332-
if c.closed {
333-
err = pool.ErrClosed
334-
} else {
335-
node = c.allNodes[addr]
336-
}
337-
c.mu.RUnlock()
338-
return node, err
339-
}
340-
341-
func (c *clusterNodes) GetOrCreate(addr string) (*clusterNode, error) {
342-
node, err := c.Get(addr)
329+
node, err := c.get(addr)
343330
if err != nil {
344331
return nil, err
345332
}
@@ -368,6 +355,19 @@ func (c *clusterNodes) GetOrCreate(addr string) (*clusterNode, error) {
368355
return node, err
369356
}
370357

358+
func (c *clusterNodes) get(addr string) (*clusterNode, error) {
359+
var node *clusterNode
360+
var err error
361+
c.mu.RLock()
362+
if c.closed {
363+
err = pool.ErrClosed
364+
} else {
365+
node = c.allNodes[addr]
366+
}
367+
c.mu.RUnlock()
368+
return node, err
369+
}
370+
371371
func (c *clusterNodes) All() ([]*clusterNode, error) {
372372
c.mu.RLock()
373373
defer c.mu.RUnlock()
@@ -390,7 +390,7 @@ func (c *clusterNodes) Random() (*clusterNode, error) {
390390
}
391391

392392
n := rand.Intn(len(addrs))
393-
return c.GetOrCreate(addrs[n])
393+
return c.Get(addrs[n])
394394
}
395395

396396
//------------------------------------------------------------------------------
@@ -448,7 +448,7 @@ func newClusterState(
448448
addr = replaceLoopbackHost(addr, originHost)
449449
}
450450

451-
node, err := c.nodes.GetOrCreate(addr)
451+
node, err := c.nodes.Get(addr)
452452
if err != nil {
453453
return nil, err
454454
}
@@ -795,7 +795,7 @@ func (c *ClusterClient) process(ctx context.Context, cmd Cmder) error {
795795
var addr string
796796
moved, ask, addr = internal.IsMovedError(err)
797797
if moved || ask {
798-
node, err = c.nodes.GetOrCreate(addr)
798+
node, err = c.nodes.Get(addr)
799799
if err != nil {
800800
break
801801
}
@@ -980,7 +980,7 @@ func (c *ClusterClient) loadState() (*clusterState, error) {
980980

981981
var firstErr error
982982
for _, addr := range addrs {
983-
node, err := c.nodes.GetOrCreate(addr)
983+
node, err := c.nodes.Get(addr)
984984
if err != nil {
985985
if firstErr == nil {
986986
firstErr = err
@@ -1192,7 +1192,7 @@ func (c *ClusterClient) checkMovedErr(
11921192
if moved {
11931193
c.state.LazyReload()
11941194

1195-
node, err := c.nodes.GetOrCreate(addr)
1195+
node, err := c.nodes.Get(addr)
11961196
if err != nil {
11971197
return false
11981198
}
@@ -1204,7 +1204,7 @@ func (c *ClusterClient) checkMovedErr(
12041204
}
12051205

12061206
if ask {
1207-
node, err := c.nodes.GetOrCreate(addr)
1207+
node, err := c.nodes.Get(addr)
12081208
if err != nil {
12091209
return false
12101210
}
@@ -1406,7 +1406,7 @@ func (c *ClusterClient) Watch(fn func(*Tx) error, keys ...string) error {
14061406

14071407
moved, ask, addr := internal.IsMovedError(err)
14081408
if moved || ask {
1409-
node, err = c.nodes.GetOrCreate(addr)
1409+
node, err = c.nodes.Get(addr)
14101410
if err != nil {
14111411
return err
14121412
}

0 commit comments

Comments
 (0)