@@ -326,20 +326,7 @@ func (c *clusterNodes) GC(generation uint32) {
326
326
}
327
327
328
328
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 )
343
330
if err != nil {
344
331
return nil , err
345
332
}
@@ -368,6 +355,19 @@ func (c *clusterNodes) GetOrCreate(addr string) (*clusterNode, error) {
368
355
return node , err
369
356
}
370
357
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
+
371
371
func (c * clusterNodes ) All () ([]* clusterNode , error ) {
372
372
c .mu .RLock ()
373
373
defer c .mu .RUnlock ()
@@ -390,7 +390,7 @@ func (c *clusterNodes) Random() (*clusterNode, error) {
390
390
}
391
391
392
392
n := rand .Intn (len (addrs ))
393
- return c .GetOrCreate (addrs [n ])
393
+ return c .Get (addrs [n ])
394
394
}
395
395
396
396
//------------------------------------------------------------------------------
@@ -448,7 +448,7 @@ func newClusterState(
448
448
addr = replaceLoopbackHost (addr , originHost )
449
449
}
450
450
451
- node , err := c .nodes .GetOrCreate (addr )
451
+ node , err := c .nodes .Get (addr )
452
452
if err != nil {
453
453
return nil , err
454
454
}
@@ -795,7 +795,7 @@ func (c *ClusterClient) process(ctx context.Context, cmd Cmder) error {
795
795
var addr string
796
796
moved , ask , addr = internal .IsMovedError (err )
797
797
if moved || ask {
798
- node , err = c .nodes .GetOrCreate (addr )
798
+ node , err = c .nodes .Get (addr )
799
799
if err != nil {
800
800
break
801
801
}
@@ -980,7 +980,7 @@ func (c *ClusterClient) loadState() (*clusterState, error) {
980
980
981
981
var firstErr error
982
982
for _ , addr := range addrs {
983
- node , err := c .nodes .GetOrCreate (addr )
983
+ node , err := c .nodes .Get (addr )
984
984
if err != nil {
985
985
if firstErr == nil {
986
986
firstErr = err
@@ -1192,7 +1192,7 @@ func (c *ClusterClient) checkMovedErr(
1192
1192
if moved {
1193
1193
c .state .LazyReload ()
1194
1194
1195
- node , err := c .nodes .GetOrCreate (addr )
1195
+ node , err := c .nodes .Get (addr )
1196
1196
if err != nil {
1197
1197
return false
1198
1198
}
@@ -1204,7 +1204,7 @@ func (c *ClusterClient) checkMovedErr(
1204
1204
}
1205
1205
1206
1206
if ask {
1207
- node , err := c .nodes .GetOrCreate (addr )
1207
+ node , err := c .nodes .Get (addr )
1208
1208
if err != nil {
1209
1209
return false
1210
1210
}
@@ -1406,7 +1406,7 @@ func (c *ClusterClient) Watch(fn func(*Tx) error, keys ...string) error {
1406
1406
1407
1407
moved , ask , addr := internal .IsMovedError (err )
1408
1408
if moved || ask {
1409
- node , err = c .nodes .GetOrCreate (addr )
1409
+ node , err = c .nodes .Get (addr )
1410
1410
if err != nil {
1411
1411
return err
1412
1412
}
0 commit comments