MCPcopy
hub / github.com/redis/go-redis / Addrs

Method Addrs

osscluster.go:662–685  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

660}
661
662func (c *clusterNodes) Addrs() ([]string, error) {
663 var addrs []string
664
665 c.mu.RLock()
666 closed := c.closed //nolint:ifshort
667 if !closed {
668 if len(c.activeAddrs) > 0 {
669 addrs = make([]string, len(c.activeAddrs))
670 copy(addrs, c.activeAddrs)
671 } else {
672 addrs = make([]string, len(c.addrs))
673 copy(addrs, c.addrs)
674 }
675 }
676 c.mu.RUnlock()
677
678 if closed {
679 return nil, pool.ErrClosed
680 }
681 if len(addrs) == 0 {
682 return nil, errClusterNoNodes
683 }
684 return addrs, nil
685}
686
687func (c *clusterNodes) NextGeneration() uint32 {
688 return atomic.AddUint32(&c.generation, 1)

Callers 3

RandomMethod · 0.95
loadStateMethod · 0.80
cmdsInfoMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected