Browse Source

Merge pull request #7724 from roidelapluie/consultm

Consul: Reduce WatchTimeout to 2m and set it as timeout for requests
pull/7739/head
Björn Rabenstein 4 years ago committed by GitHub
parent
commit
f16993182e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      discovery/consul/consul.go
  2. 14
      discovery/consul/consul_test.go

4
discovery/consul/consul.go

@ -36,7 +36,7 @@ import (
)
const (
watchTimeout = 10 * time.Minute
watchTimeout = 2 * time.Minute
retryInterval = 15 * time.Second
// addressLabel is the name for the label containing a target's address.
@ -184,7 +184,7 @@ func NewDiscovery(conf *SDConfig, logger log.Logger) (*Discovery, error) {
}
wrapper := &http.Client{
Transport: transport,
Timeout: 35 * time.Second,
Timeout: time.Duration(watchTimeout) + 15*time.Second,
}
clientConf := &consul.Config{

14
discovery/consul/consul_test.go

@ -223,20 +223,20 @@ func newServer(t *testing.T) (*httptest.Server, *SDConfig) {
switch r.URL.String() {
case "/v1/agent/self":
response = AgentAnswer
case "/v1/health/service/test?node-meta=rack_name%3A2304&stale=&tag=tag1&wait=600000ms":
case "/v1/health/service/test?node-meta=rack_name%3A2304&stale=&tag=tag1&wait=120000ms":
response = ServiceTestAnswer
case "/v1/health/service/test?wait=600000ms":
case "/v1/health/service/test?wait=120000ms":
response = ServiceTestAnswer
case "/v1/health/service/other?wait=600000ms":
case "/v1/health/service/other?wait=120000ms":
response = `[]`
case "/v1/catalog/services?node-meta=rack_name%3A2304&stale=&wait=600000ms":
case "/v1/catalog/services?node-meta=rack_name%3A2304&stale=&wait=120000ms":
response = ServicesTestAnswer
case "/v1/catalog/services?wait=600000ms":
case "/v1/catalog/services?wait=120000ms":
response = ServicesTestAnswer
case "/v1/catalog/services?index=1&node-meta=rack_name%3A2304&stale=&wait=600000ms":
case "/v1/catalog/services?index=1&node-meta=rack_name%3A2304&stale=&wait=120000ms":
time.Sleep(5 * time.Second)
response = ServicesTestAnswer
case "/v1/catalog/services?index=1&wait=600000ms":
case "/v1/catalog/services?index=1&wait=120000ms":
time.Sleep(5 * time.Second)
response = ServicesTestAnswer
default:

Loading…
Cancel
Save