mirror of https://github.com/hashicorp/consul
Update Serf to include `serf.NumNodes()`
parent
74bcbc63f8
commit
bf8c860663
|
@ -1,27 +0,0 @@
|
|||
package coordinate
|
||||
|
||||
import (
|
||||
"math"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// verifyEqualFloats will compare f1 and f2 and fail if they are not
|
||||
// "equal" within a threshold.
|
||||
func verifyEqualFloats(t *testing.T, f1 float64, f2 float64) {
|
||||
const zeroThreshold = 1.0e-6
|
||||
if math.Abs(f1-f2) > zeroThreshold {
|
||||
t.Fatalf("equal assertion fail, %9.6f != %9.6f", f1, f2)
|
||||
}
|
||||
}
|
||||
|
||||
// verifyEqualVectors will compare vec1 and vec2 and fail if they are not
|
||||
// "equal" within a threshold.
|
||||
func verifyEqualVectors(t *testing.T, vec1 []float64, vec2 []float64) {
|
||||
if len(vec1) != len(vec2) {
|
||||
t.Fatalf("vector length mismatch, %d != %d", len(vec1), len(vec2))
|
||||
}
|
||||
|
||||
for i, _ := range vec1 {
|
||||
verifyEqualFloats(t, vec1[i], vec2[i])
|
||||
}
|
||||
}
|
|
@ -1680,3 +1680,13 @@ func (s *Serf) GetCachedCoordinate(name string) (coord *coordinate.Coordinate, o
|
|||
|
||||
return nil, false
|
||||
}
|
||||
|
||||
// NumNodes returns the number of nodes in the serf cluster, regardless of
|
||||
// their health or status.
|
||||
func (s *Serf) NumNodes() (numNodes int) {
|
||||
s.memberLock.RLock()
|
||||
numNodes = len(s.members)
|
||||
s.memberLock.RUnlock()
|
||||
|
||||
return numNodes
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue