mirror of https://github.com/status-im/consul.git
Bump x/time to 0.3.0 and fix related breakage linked to RPCRateLimit (#16241)
* Bump x/time to 0.3.0 and fix related breakage linked to RPCRateLimit initialization * Apply limitVal(...) to other rate.Limit config fields
This commit is contained in:
parent
a464c158d7
commit
8979e64a94
|
@ -954,8 +954,8 @@ func (b *builder) build() (rt RuntimeConfig, err error) {
|
|||
Bootstrap: boolVal(c.Bootstrap),
|
||||
BootstrapExpect: intVal(c.BootstrapExpect),
|
||||
Cache: cache.Options{
|
||||
EntryFetchRate: rate.Limit(
|
||||
float64ValWithDefault(c.Cache.EntryFetchRate, float64(cache.DefaultEntryFetchRate)),
|
||||
EntryFetchRate: limitValWithDefault(
|
||||
c.Cache.EntryFetchRate, float64(cache.DefaultEntryFetchRate),
|
||||
),
|
||||
EntryFetchMaxBurst: intValWithDefault(
|
||||
c.Cache.EntryFetchMaxBurst, cache.DefaultEntryFetchMaxBurst,
|
||||
|
@ -1045,7 +1045,7 @@ func (b *builder) build() (rt RuntimeConfig, err error) {
|
|||
RPCMaxBurst: intVal(c.Limits.RPCMaxBurst),
|
||||
RPCMaxConnsPerClient: intVal(c.Limits.RPCMaxConnsPerClient),
|
||||
RPCProtocol: intVal(c.RPCProtocol),
|
||||
RPCRateLimit: rate.Limit(float64Val(c.Limits.RPCRate)),
|
||||
RPCRateLimit: limitVal(c.Limits.RPCRate),
|
||||
RPCConfig: consul.RPCConfig{EnableStreaming: boolValWithDefault(c.RPC.EnableStreaming, serverMode)},
|
||||
RaftProtocol: intVal(c.RaftProtocol),
|
||||
RaftSnapshotThreshold: intVal(c.RaftSnapshotThreshold),
|
||||
|
@ -1089,7 +1089,7 @@ func (b *builder) build() (rt RuntimeConfig, err error) {
|
|||
UnixSocketMode: stringVal(c.UnixSocket.Mode),
|
||||
UnixSocketUser: stringVal(c.UnixSocket.User),
|
||||
Watches: c.Watches,
|
||||
XDSUpdateRateLimit: rate.Limit(float64Val(c.XDS.UpdateMaxPerSecond)),
|
||||
XDSUpdateRateLimit: limitVal(c.XDS.UpdateMaxPerSecond),
|
||||
AutoReloadConfigCoalesceInterval: 1 * time.Second,
|
||||
}
|
||||
|
||||
|
@ -2034,6 +2034,11 @@ func limitVal(v *float64) rate.Limit {
|
|||
return rate.Limit(f)
|
||||
}
|
||||
|
||||
func limitValWithDefault(v *float64, defaultVal float64) rate.Limit {
|
||||
f := float64ValWithDefault(v, defaultVal)
|
||||
return limitVal(&f)
|
||||
}
|
||||
|
||||
func (b *builder) cidrsVal(name string, v []string) (nets []*net.IPNet) {
|
||||
if v == nil {
|
||||
return
|
||||
|
|
|
@ -4646,6 +4646,8 @@ func TestLoad_IntegrationWithFlags(t *testing.T) {
|
|||
rt.RequestLimitsWriteRate = rate.Inf
|
||||
rt.SegmentLimit = 64
|
||||
rt.XDSUpdateRateLimit = 250
|
||||
rt.RPCRateLimit = rate.Inf
|
||||
rt.RPCMaxBurst = 1000
|
||||
},
|
||||
})
|
||||
|
||||
|
|
6
go.mod
6
go.mod
|
@ -8,10 +8,6 @@ replace (
|
|||
github.com/hashicorp/consul/proto-public => ./proto-public
|
||||
github.com/hashicorp/consul/sdk => ./sdk
|
||||
github.com/hashicorp/consul/troubleshoot => ./troubleshoot
|
||||
// pinning this x/time version because consul-k8s acceptance tests fail
|
||||
// with client rate limiting issues with newer versions of this package.
|
||||
// This is tracked in NET-2284
|
||||
golang.org/x/time => golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e
|
||||
)
|
||||
|
||||
exclude (
|
||||
|
@ -102,7 +98,7 @@ require (
|
|||
golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4
|
||||
golang.org/x/sys v0.3.0
|
||||
golang.org/x/time v0.1.0
|
||||
golang.org/x/time v0.3.0
|
||||
google.golang.org/genproto v0.0.0-20220921223823-23cae91e6737
|
||||
google.golang.org/grpc v1.49.0
|
||||
google.golang.org/protobuf v1.28.1
|
||||
|
|
11
go.sum
11
go.sum
|
@ -1333,8 +1333,15 @@ golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
|||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM=
|
||||
golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||
golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e h1:EHBhcS0mlXEAVwNyO2dLfjToGsyY4j24pTs2ScHnX7s=
|
||||
golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20161028155119-f51c12702a4d/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4=
|
||||
golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
|
|
Loading…
Reference in New Issue