From acb65170f3cf3169090af68532e968fc5f8e30e3 Mon Sep 17 00:00:00 2001 From: Jack Francis Date: Tue, 6 Jun 2017 22:21:14 -0700 Subject: [PATCH] preferring float32 for rate limit QPS param --- pkg/cloudprovider/providers/azure/azure.go | 6 +++--- pkg/cloudprovider/providers/azure/azure_test.go | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkg/cloudprovider/providers/azure/azure.go b/pkg/cloudprovider/providers/azure/azure.go index 8532e0a3f5b..ca2e48b7e6c 100644 --- a/pkg/cloudprovider/providers/azure/azure.go +++ b/pkg/cloudprovider/providers/azure/azure.go @@ -40,7 +40,7 @@ import ( const ( // CloudProviderName is the value used for the --cloud-provider flag CloudProviderName = "azure" - rateLimitQPSDefault = 1 + rateLimitQPSDefault = 1.0 rateLimitBucketDefault = 5 backoffRetriesDefault = 6 backoffExponentDefault = 1.5 @@ -93,7 +93,7 @@ type Config struct { // Enable rate limiting CloudProviderRateLimit bool `json:"cloudProviderRateLimit" yaml:"cloudProviderRateLimit"` // Rate limit QPS - CloudProviderRateLimitQPS int `json:"cloudProviderRateLimitQPS" yaml:"cloudProviderRateLimitQPS"` + CloudProviderRateLimitQPS float32 `json:"cloudProviderRateLimitQPS" yaml:"cloudProviderRateLimitQPS"` // Rate limit Bucket Size CloudProviderRateLimitBucket int `json:"cloudProviderRateLimitBucket" yaml:"cloudProviderRateLimitBucket"` } @@ -216,7 +216,7 @@ func NewCloud(configReader io.Reader) (cloudprovider.Interface, error) { az.CloudProviderRateLimitBucket = rateLimitBucketDefault } az.operationPollRateLimiter = flowcontrol.NewTokenBucketRateLimiter( - float32(az.CloudProviderRateLimitQPS), + az.CloudProviderRateLimitQPS, az.CloudProviderRateLimitBucket) glog.V(2).Infof("Azure cloudprovider using rate limit config: QPS=%d, bucket=%d", az.CloudProviderRateLimitQPS, diff --git a/pkg/cloudprovider/providers/azure/azure_test.go b/pkg/cloudprovider/providers/azure/azure_test.go index f7cf5eca184..15f86751abe 100644 --- a/pkg/cloudprovider/providers/azure/azure_test.go +++ b/pkg/cloudprovider/providers/azure/azure_test.go @@ -598,7 +598,7 @@ func TestNewCloudFromJSON(t *testing.T) { "cloudProviderBackoffDuration": 5, "cloudProviderBackoffJitter": 1.0, "cloudProviderRatelimit": true, - "cloudProviderRateLimitQPS": 1, + "cloudProviderRateLimitQPS": 0.5, "cloudProviderRateLimitBucket": 5 }` validateConfig(t, config) @@ -638,7 +638,7 @@ cloudProviderBackoffExponent: 1.5 cloudProviderBackoffDuration: 5 cloudProviderBackoffJitter: 1.0 cloudProviderRatelimit: true -cloudProviderRateLimitQPS: 1 +cloudProviderRateLimitQPS: 0.5 cloudProviderRateLimitBucket: 5 ` validateConfig(t, config) @@ -698,7 +698,7 @@ func validateConfig(t *testing.T, config string) { if azureCloud.CloudProviderRateLimit != true { t.Errorf("got incorrect value for CloudProviderRateLimit") } - if azureCloud.CloudProviderRateLimitQPS != 1 { + if azureCloud.CloudProviderRateLimitQPS != 0.5 { t.Errorf("got incorrect value for CloudProviderRateLimitQPS") } if azureCloud.CloudProviderRateLimitBucket != 5 {