vitess.io/vitess@v0.16.2/go/vt/proto/throttlerdata/throttlerdata.pb.go (about)

     1  //
     2  //Copyright 2019 The Vitess Authors.
     3  //
     4  //Licensed under the Apache License, Version 2.0 (the "License");
     5  //you may not use this file except in compliance with the License.
     6  //You may obtain a copy of the License at
     7  //
     8  //http://www.apache.org/licenses/LICENSE-2.0
     9  //
    10  //Unless required by applicable law or agreed to in writing, software
    11  //distributed under the License is distributed on an "AS IS" BASIS,
    12  //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  //See the License for the specific language governing permissions and
    14  //limitations under the License.
    15  
    16  // Data structures for the throttler RPC interface.
    17  
    18  // Code generated by protoc-gen-go. DO NOT EDIT.
    19  // versions:
    20  // 	protoc-gen-go v1.28.1
    21  // 	protoc        v3.21.3
    22  // source: throttlerdata.proto
    23  
    24  package throttlerdata
    25  
    26  import (
    27  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    28  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    29  	reflect "reflect"
    30  	sync "sync"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  // MaxRatesRequest is the payload for the MaxRates RPC.
    41  type MaxRatesRequest struct {
    42  	state         protoimpl.MessageState
    43  	sizeCache     protoimpl.SizeCache
    44  	unknownFields protoimpl.UnknownFields
    45  }
    46  
    47  func (x *MaxRatesRequest) Reset() {
    48  	*x = MaxRatesRequest{}
    49  	if protoimpl.UnsafeEnabled {
    50  		mi := &file_throttlerdata_proto_msgTypes[0]
    51  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    52  		ms.StoreMessageInfo(mi)
    53  	}
    54  }
    55  
    56  func (x *MaxRatesRequest) String() string {
    57  	return protoimpl.X.MessageStringOf(x)
    58  }
    59  
    60  func (*MaxRatesRequest) ProtoMessage() {}
    61  
    62  func (x *MaxRatesRequest) ProtoReflect() protoreflect.Message {
    63  	mi := &file_throttlerdata_proto_msgTypes[0]
    64  	if protoimpl.UnsafeEnabled && x != nil {
    65  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    66  		if ms.LoadMessageInfo() == nil {
    67  			ms.StoreMessageInfo(mi)
    68  		}
    69  		return ms
    70  	}
    71  	return mi.MessageOf(x)
    72  }
    73  
    74  // Deprecated: Use MaxRatesRequest.ProtoReflect.Descriptor instead.
    75  func (*MaxRatesRequest) Descriptor() ([]byte, []int) {
    76  	return file_throttlerdata_proto_rawDescGZIP(), []int{0}
    77  }
    78  
    79  // MaxRatesResponse is returned by the MaxRates RPC.
    80  type MaxRatesResponse struct {
    81  	state         protoimpl.MessageState
    82  	sizeCache     protoimpl.SizeCache
    83  	unknownFields protoimpl.UnknownFields
    84  
    85  	// max_rates returns the max rate for each throttler. It's keyed by the
    86  	// throttler name.
    87  	Rates map[string]int64 `protobuf:"bytes,1,rep,name=rates,proto3" json:"rates,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
    88  }
    89  
    90  func (x *MaxRatesResponse) Reset() {
    91  	*x = MaxRatesResponse{}
    92  	if protoimpl.UnsafeEnabled {
    93  		mi := &file_throttlerdata_proto_msgTypes[1]
    94  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    95  		ms.StoreMessageInfo(mi)
    96  	}
    97  }
    98  
    99  func (x *MaxRatesResponse) String() string {
   100  	return protoimpl.X.MessageStringOf(x)
   101  }
   102  
   103  func (*MaxRatesResponse) ProtoMessage() {}
   104  
   105  func (x *MaxRatesResponse) ProtoReflect() protoreflect.Message {
   106  	mi := &file_throttlerdata_proto_msgTypes[1]
   107  	if protoimpl.UnsafeEnabled && x != nil {
   108  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   109  		if ms.LoadMessageInfo() == nil {
   110  			ms.StoreMessageInfo(mi)
   111  		}
   112  		return ms
   113  	}
   114  	return mi.MessageOf(x)
   115  }
   116  
   117  // Deprecated: Use MaxRatesResponse.ProtoReflect.Descriptor instead.
   118  func (*MaxRatesResponse) Descriptor() ([]byte, []int) {
   119  	return file_throttlerdata_proto_rawDescGZIP(), []int{1}
   120  }
   121  
   122  func (x *MaxRatesResponse) GetRates() map[string]int64 {
   123  	if x != nil {
   124  		return x.Rates
   125  	}
   126  	return nil
   127  }
   128  
   129  // SetMaxRateRequest is the payload for the SetMaxRate RPC.
   130  type SetMaxRateRequest struct {
   131  	state         protoimpl.MessageState
   132  	sizeCache     protoimpl.SizeCache
   133  	unknownFields protoimpl.UnknownFields
   134  
   135  	Rate int64 `protobuf:"varint,1,opt,name=rate,proto3" json:"rate,omitempty"`
   136  }
   137  
   138  func (x *SetMaxRateRequest) Reset() {
   139  	*x = SetMaxRateRequest{}
   140  	if protoimpl.UnsafeEnabled {
   141  		mi := &file_throttlerdata_proto_msgTypes[2]
   142  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   143  		ms.StoreMessageInfo(mi)
   144  	}
   145  }
   146  
   147  func (x *SetMaxRateRequest) String() string {
   148  	return protoimpl.X.MessageStringOf(x)
   149  }
   150  
   151  func (*SetMaxRateRequest) ProtoMessage() {}
   152  
   153  func (x *SetMaxRateRequest) ProtoReflect() protoreflect.Message {
   154  	mi := &file_throttlerdata_proto_msgTypes[2]
   155  	if protoimpl.UnsafeEnabled && x != nil {
   156  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   157  		if ms.LoadMessageInfo() == nil {
   158  			ms.StoreMessageInfo(mi)
   159  		}
   160  		return ms
   161  	}
   162  	return mi.MessageOf(x)
   163  }
   164  
   165  // Deprecated: Use SetMaxRateRequest.ProtoReflect.Descriptor instead.
   166  func (*SetMaxRateRequest) Descriptor() ([]byte, []int) {
   167  	return file_throttlerdata_proto_rawDescGZIP(), []int{2}
   168  }
   169  
   170  func (x *SetMaxRateRequest) GetRate() int64 {
   171  	if x != nil {
   172  		return x.Rate
   173  	}
   174  	return 0
   175  }
   176  
   177  // SetMaxRateResponse is returned by the SetMaxRate RPC.
   178  type SetMaxRateResponse struct {
   179  	state         protoimpl.MessageState
   180  	sizeCache     protoimpl.SizeCache
   181  	unknownFields protoimpl.UnknownFields
   182  
   183  	// names is the list of throttler names which were updated.
   184  	Names []string `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"`
   185  }
   186  
   187  func (x *SetMaxRateResponse) Reset() {
   188  	*x = SetMaxRateResponse{}
   189  	if protoimpl.UnsafeEnabled {
   190  		mi := &file_throttlerdata_proto_msgTypes[3]
   191  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   192  		ms.StoreMessageInfo(mi)
   193  	}
   194  }
   195  
   196  func (x *SetMaxRateResponse) String() string {
   197  	return protoimpl.X.MessageStringOf(x)
   198  }
   199  
   200  func (*SetMaxRateResponse) ProtoMessage() {}
   201  
   202  func (x *SetMaxRateResponse) ProtoReflect() protoreflect.Message {
   203  	mi := &file_throttlerdata_proto_msgTypes[3]
   204  	if protoimpl.UnsafeEnabled && x != nil {
   205  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   206  		if ms.LoadMessageInfo() == nil {
   207  			ms.StoreMessageInfo(mi)
   208  		}
   209  		return ms
   210  	}
   211  	return mi.MessageOf(x)
   212  }
   213  
   214  // Deprecated: Use SetMaxRateResponse.ProtoReflect.Descriptor instead.
   215  func (*SetMaxRateResponse) Descriptor() ([]byte, []int) {
   216  	return file_throttlerdata_proto_rawDescGZIP(), []int{3}
   217  }
   218  
   219  func (x *SetMaxRateResponse) GetNames() []string {
   220  	if x != nil {
   221  		return x.Names
   222  	}
   223  	return nil
   224  }
   225  
   226  // Configuration holds the configuration parameters for the
   227  // MaxReplicationLagModule which adaptively adjusts the throttling rate based on
   228  // the observed replication lag across all replicas.
   229  type Configuration struct {
   230  	state         protoimpl.MessageState
   231  	sizeCache     protoimpl.SizeCache
   232  	unknownFields protoimpl.UnknownFields
   233  
   234  	// target_replication_lag_sec is the replication lag (in seconds) the
   235  	// MaxReplicationLagModule tries to aim for.
   236  	// If it is within the target, it tries to increase the throttler
   237  	// rate, otherwise it will lower it based on an educated guess of the
   238  	// replica's throughput.
   239  	TargetReplicationLagSec int64 `protobuf:"varint,1,opt,name=target_replication_lag_sec,json=targetReplicationLagSec,proto3" json:"target_replication_lag_sec,omitempty"`
   240  	// max_replication_lag_sec is meant as a last resort.
   241  	// By default, the module tries to find out the system maximum capacity while
   242  	// trying to keep the replication lag around "target_replication_lag_sec".
   243  	// Usually, we'll wait min_duration_between_(increases|decreases)_sec to see
   244  	// the effect of a throttler rate change on the replication lag.
   245  	// But if the lag goes above this field's value we will go into an "emergency"
   246  	// state and throttle more aggressively (see "emergency_decrease" below).
   247  	// This is the only way to ensure that the system will recover.
   248  	MaxReplicationLagSec int64 `protobuf:"varint,2,opt,name=max_replication_lag_sec,json=maxReplicationLagSec,proto3" json:"max_replication_lag_sec,omitempty"`
   249  	// initial_rate is the rate at which the module will start.
   250  	InitialRate int64 `protobuf:"varint,3,opt,name=initial_rate,json=initialRate,proto3" json:"initial_rate,omitempty"`
   251  	// max_increase defines by how much we will increase the rate
   252  	// e.g. 0.05 increases the rate by 5% while 1.0 by 100%.
   253  	// Note that any increase will let the system wait for at least
   254  	// (1 / MaxIncrease) seconds. If we wait for shorter periods of time, we
   255  	// won't notice if the rate increase also increases the replication lag.
   256  	// (If the system was already at its maximum capacity (e.g. 1k QPS) and we
   257  	// increase the rate by e.g. 5% to 1050 QPS, it will take 20 seconds until
   258  	// 1000 extra queries are buffered and the lag increases by 1 second.)
   259  	MaxIncrease float64 `protobuf:"fixed64,4,opt,name=max_increase,json=maxIncrease,proto3" json:"max_increase,omitempty"`
   260  	// emergency_decrease defines by how much we will decrease the current rate
   261  	// if the observed replication lag is above "max_replication_lag_sec".
   262  	// E.g. 0.50 decreases the current rate by 50%.
   263  	EmergencyDecrease float64 `protobuf:"fixed64,5,opt,name=emergency_decrease,json=emergencyDecrease,proto3" json:"emergency_decrease,omitempty"`
   264  	// min_duration_between_increases_sec specifies how long we'll wait at least
   265  	// for the last rate increase to have an effect on the system.
   266  	MinDurationBetweenIncreasesSec int64 `protobuf:"varint,6,opt,name=min_duration_between_increases_sec,json=minDurationBetweenIncreasesSec,proto3" json:"min_duration_between_increases_sec,omitempty"`
   267  	// max_duration_between_increases_sec specifies how long we'll wait at most
   268  	// for the last rate increase to have an effect on the system.
   269  	MaxDurationBetweenIncreasesSec int64 `protobuf:"varint,7,opt,name=max_duration_between_increases_sec,json=maxDurationBetweenIncreasesSec,proto3" json:"max_duration_between_increases_sec,omitempty"`
   270  	// min_duration_between_decreases_sec specifies how long we'll wait at least
   271  	// for the last rate decrease to have an effect on the system.
   272  	MinDurationBetweenDecreasesSec int64 `protobuf:"varint,8,opt,name=min_duration_between_decreases_sec,json=minDurationBetweenDecreasesSec,proto3" json:"min_duration_between_decreases_sec,omitempty"`
   273  	// spread_backlog_across_sec is used when we set the throttler rate after
   274  	// we guessed the rate of a replica and determined its backlog.
   275  	// For example, at a guessed rate of 100 QPS and a lag of 10s, the replica has
   276  	// a backlog of 1000 queries.
   277  	// When we set the new, decreased throttler rate, we factor in how long it
   278  	// will take the replica to go through the backlog (in addition to new
   279  	// requests). This field specifies over which timespan we plan to spread this.
   280  	// For example, for a backlog of 1000 queries spread over 5s means that we
   281  	// have to further reduce the rate by 200 QPS or the backlog will not be
   282  	// processed within the 5 seconds.
   283  	SpreadBacklogAcrossSec int64 `protobuf:"varint,9,opt,name=spread_backlog_across_sec,json=spreadBacklogAcrossSec,proto3" json:"spread_backlog_across_sec,omitempty"`
   284  	// ignore_n_slowest_replicas will ignore replication lag updates from the
   285  	// N slowest REPLICA tablets. Under certain circumstances, replicas are still
   286  	// considered e.g. a) if the lag is at most max_replication_lag_sec, b) there
   287  	// are less than N+1 replicas or c) the lag increased on each replica such
   288  	// that all replicas were ignored in a row.
   289  	IgnoreNSlowestReplicas int32 `protobuf:"varint,10,opt,name=ignore_n_slowest_replicas,json=ignoreNSlowestReplicas,proto3" json:"ignore_n_slowest_replicas,omitempty"`
   290  	// ignore_n_slowest_rdonlys does the same thing as ignore_n_slowest_replicas
   291  	// but for RDONLY tablets. Note that these two settings are independent.
   292  	IgnoreNSlowestRdonlys int32 `protobuf:"varint,11,opt,name=ignore_n_slowest_rdonlys,json=ignoreNSlowestRdonlys,proto3" json:"ignore_n_slowest_rdonlys,omitempty"`
   293  	// age_bad_rate_after_sec is the duration after which an unchanged bad rate
   294  	// will "age out" and increase by "bad_rate_increase".
   295  	// Bad rates are tracked by the code in memory.go and serve as an upper bound
   296  	// for future rate changes. This ensures that the adaptive throttler does not
   297  	// try known too high (bad) rates over and over again.
   298  	// To avoid that temporary degradations permanently reduce the maximum rate,
   299  	// a stable bad rate "ages out" after "age_bad_rate_after_sec".
   300  	AgeBadRateAfterSec int64 `protobuf:"varint,12,opt,name=age_bad_rate_after_sec,json=ageBadRateAfterSec,proto3" json:"age_bad_rate_after_sec,omitempty"`
   301  	// bad_rate_increase defines the percentage by which a bad rate will be
   302  	// increased when it's aging out.
   303  	BadRateIncrease float64 `protobuf:"fixed64,13,opt,name=bad_rate_increase,json=badRateIncrease,proto3" json:"bad_rate_increase,omitempty"`
   304  	// max_rate_approach_threshold is the fraction of the current rate limit that the actual
   305  	// rate must exceed for the throttler to increase the limit when the replication lag
   306  	// is below target_replication_lag_sec. For example, assuming the actual replication lag
   307  	// is below target_replication_lag_sec, if the current rate limit is 100, then the actual
   308  	// rate must exceed 100*max_rate_approach_threshold for the throttler to increase the current
   309  	// limit.
   310  	MaxRateApproachThreshold float64 `protobuf:"fixed64,14,opt,name=max_rate_approach_threshold,json=maxRateApproachThreshold,proto3" json:"max_rate_approach_threshold,omitempty"`
   311  }
   312  
   313  func (x *Configuration) Reset() {
   314  	*x = Configuration{}
   315  	if protoimpl.UnsafeEnabled {
   316  		mi := &file_throttlerdata_proto_msgTypes[4]
   317  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   318  		ms.StoreMessageInfo(mi)
   319  	}
   320  }
   321  
   322  func (x *Configuration) String() string {
   323  	return protoimpl.X.MessageStringOf(x)
   324  }
   325  
   326  func (*Configuration) ProtoMessage() {}
   327  
   328  func (x *Configuration) ProtoReflect() protoreflect.Message {
   329  	mi := &file_throttlerdata_proto_msgTypes[4]
   330  	if protoimpl.UnsafeEnabled && x != nil {
   331  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   332  		if ms.LoadMessageInfo() == nil {
   333  			ms.StoreMessageInfo(mi)
   334  		}
   335  		return ms
   336  	}
   337  	return mi.MessageOf(x)
   338  }
   339  
   340  // Deprecated: Use Configuration.ProtoReflect.Descriptor instead.
   341  func (*Configuration) Descriptor() ([]byte, []int) {
   342  	return file_throttlerdata_proto_rawDescGZIP(), []int{4}
   343  }
   344  
   345  func (x *Configuration) GetTargetReplicationLagSec() int64 {
   346  	if x != nil {
   347  		return x.TargetReplicationLagSec
   348  	}
   349  	return 0
   350  }
   351  
   352  func (x *Configuration) GetMaxReplicationLagSec() int64 {
   353  	if x != nil {
   354  		return x.MaxReplicationLagSec
   355  	}
   356  	return 0
   357  }
   358  
   359  func (x *Configuration) GetInitialRate() int64 {
   360  	if x != nil {
   361  		return x.InitialRate
   362  	}
   363  	return 0
   364  }
   365  
   366  func (x *Configuration) GetMaxIncrease() float64 {
   367  	if x != nil {
   368  		return x.MaxIncrease
   369  	}
   370  	return 0
   371  }
   372  
   373  func (x *Configuration) GetEmergencyDecrease() float64 {
   374  	if x != nil {
   375  		return x.EmergencyDecrease
   376  	}
   377  	return 0
   378  }
   379  
   380  func (x *Configuration) GetMinDurationBetweenIncreasesSec() int64 {
   381  	if x != nil {
   382  		return x.MinDurationBetweenIncreasesSec
   383  	}
   384  	return 0
   385  }
   386  
   387  func (x *Configuration) GetMaxDurationBetweenIncreasesSec() int64 {
   388  	if x != nil {
   389  		return x.MaxDurationBetweenIncreasesSec
   390  	}
   391  	return 0
   392  }
   393  
   394  func (x *Configuration) GetMinDurationBetweenDecreasesSec() int64 {
   395  	if x != nil {
   396  		return x.MinDurationBetweenDecreasesSec
   397  	}
   398  	return 0
   399  }
   400  
   401  func (x *Configuration) GetSpreadBacklogAcrossSec() int64 {
   402  	if x != nil {
   403  		return x.SpreadBacklogAcrossSec
   404  	}
   405  	return 0
   406  }
   407  
   408  func (x *Configuration) GetIgnoreNSlowestReplicas() int32 {
   409  	if x != nil {
   410  		return x.IgnoreNSlowestReplicas
   411  	}
   412  	return 0
   413  }
   414  
   415  func (x *Configuration) GetIgnoreNSlowestRdonlys() int32 {
   416  	if x != nil {
   417  		return x.IgnoreNSlowestRdonlys
   418  	}
   419  	return 0
   420  }
   421  
   422  func (x *Configuration) GetAgeBadRateAfterSec() int64 {
   423  	if x != nil {
   424  		return x.AgeBadRateAfterSec
   425  	}
   426  	return 0
   427  }
   428  
   429  func (x *Configuration) GetBadRateIncrease() float64 {
   430  	if x != nil {
   431  		return x.BadRateIncrease
   432  	}
   433  	return 0
   434  }
   435  
   436  func (x *Configuration) GetMaxRateApproachThreshold() float64 {
   437  	if x != nil {
   438  		return x.MaxRateApproachThreshold
   439  	}
   440  	return 0
   441  }
   442  
   443  // GetConfigurationRequest is the payload for the GetConfiguration RPC.
   444  type GetConfigurationRequest struct {
   445  	state         protoimpl.MessageState
   446  	sizeCache     protoimpl.SizeCache
   447  	unknownFields protoimpl.UnknownFields
   448  
   449  	// throttler_name specifies which throttler to select. If empty, all active
   450  	// throttlers will be selected.
   451  	ThrottlerName string `protobuf:"bytes,1,opt,name=throttler_name,json=throttlerName,proto3" json:"throttler_name,omitempty"`
   452  }
   453  
   454  func (x *GetConfigurationRequest) Reset() {
   455  	*x = GetConfigurationRequest{}
   456  	if protoimpl.UnsafeEnabled {
   457  		mi := &file_throttlerdata_proto_msgTypes[5]
   458  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   459  		ms.StoreMessageInfo(mi)
   460  	}
   461  }
   462  
   463  func (x *GetConfigurationRequest) String() string {
   464  	return protoimpl.X.MessageStringOf(x)
   465  }
   466  
   467  func (*GetConfigurationRequest) ProtoMessage() {}
   468  
   469  func (x *GetConfigurationRequest) ProtoReflect() protoreflect.Message {
   470  	mi := &file_throttlerdata_proto_msgTypes[5]
   471  	if protoimpl.UnsafeEnabled && x != nil {
   472  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   473  		if ms.LoadMessageInfo() == nil {
   474  			ms.StoreMessageInfo(mi)
   475  		}
   476  		return ms
   477  	}
   478  	return mi.MessageOf(x)
   479  }
   480  
   481  // Deprecated: Use GetConfigurationRequest.ProtoReflect.Descriptor instead.
   482  func (*GetConfigurationRequest) Descriptor() ([]byte, []int) {
   483  	return file_throttlerdata_proto_rawDescGZIP(), []int{5}
   484  }
   485  
   486  func (x *GetConfigurationRequest) GetThrottlerName() string {
   487  	if x != nil {
   488  		return x.ThrottlerName
   489  	}
   490  	return ""
   491  }
   492  
   493  // GetConfigurationResponse is returned by the GetConfiguration RPC.
   494  type GetConfigurationResponse struct {
   495  	state         protoimpl.MessageState
   496  	sizeCache     protoimpl.SizeCache
   497  	unknownFields protoimpl.UnknownFields
   498  
   499  	// max_rates returns the configurations for each throttler.
   500  	// It's keyed by the throttler name.
   501  	Configurations map[string]*Configuration `protobuf:"bytes,1,rep,name=configurations,proto3" json:"configurations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   502  }
   503  
   504  func (x *GetConfigurationResponse) Reset() {
   505  	*x = GetConfigurationResponse{}
   506  	if protoimpl.UnsafeEnabled {
   507  		mi := &file_throttlerdata_proto_msgTypes[6]
   508  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   509  		ms.StoreMessageInfo(mi)
   510  	}
   511  }
   512  
   513  func (x *GetConfigurationResponse) String() string {
   514  	return protoimpl.X.MessageStringOf(x)
   515  }
   516  
   517  func (*GetConfigurationResponse) ProtoMessage() {}
   518  
   519  func (x *GetConfigurationResponse) ProtoReflect() protoreflect.Message {
   520  	mi := &file_throttlerdata_proto_msgTypes[6]
   521  	if protoimpl.UnsafeEnabled && x != nil {
   522  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   523  		if ms.LoadMessageInfo() == nil {
   524  			ms.StoreMessageInfo(mi)
   525  		}
   526  		return ms
   527  	}
   528  	return mi.MessageOf(x)
   529  }
   530  
   531  // Deprecated: Use GetConfigurationResponse.ProtoReflect.Descriptor instead.
   532  func (*GetConfigurationResponse) Descriptor() ([]byte, []int) {
   533  	return file_throttlerdata_proto_rawDescGZIP(), []int{6}
   534  }
   535  
   536  func (x *GetConfigurationResponse) GetConfigurations() map[string]*Configuration {
   537  	if x != nil {
   538  		return x.Configurations
   539  	}
   540  	return nil
   541  }
   542  
   543  // UpdateConfigurationRequest is the payload for the UpdateConfiguration RPC.
   544  type UpdateConfigurationRequest struct {
   545  	state         protoimpl.MessageState
   546  	sizeCache     protoimpl.SizeCache
   547  	unknownFields protoimpl.UnknownFields
   548  
   549  	// throttler_name specifies which throttler to update. If empty, all active
   550  	// throttlers will be updated.
   551  	ThrottlerName string `protobuf:"bytes,1,opt,name=throttler_name,json=throttlerName,proto3" json:"throttler_name,omitempty"`
   552  	// configuration is the new (partial) configuration.
   553  	Configuration *Configuration `protobuf:"bytes,2,opt,name=configuration,proto3" json:"configuration,omitempty"`
   554  	// copy_zero_values specifies whether fields with zero values should be copied
   555  	// as well.
   556  	CopyZeroValues bool `protobuf:"varint,3,opt,name=copy_zero_values,json=copyZeroValues,proto3" json:"copy_zero_values,omitempty"`
   557  }
   558  
   559  func (x *UpdateConfigurationRequest) Reset() {
   560  	*x = UpdateConfigurationRequest{}
   561  	if protoimpl.UnsafeEnabled {
   562  		mi := &file_throttlerdata_proto_msgTypes[7]
   563  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   564  		ms.StoreMessageInfo(mi)
   565  	}
   566  }
   567  
   568  func (x *UpdateConfigurationRequest) String() string {
   569  	return protoimpl.X.MessageStringOf(x)
   570  }
   571  
   572  func (*UpdateConfigurationRequest) ProtoMessage() {}
   573  
   574  func (x *UpdateConfigurationRequest) ProtoReflect() protoreflect.Message {
   575  	mi := &file_throttlerdata_proto_msgTypes[7]
   576  	if protoimpl.UnsafeEnabled && x != nil {
   577  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   578  		if ms.LoadMessageInfo() == nil {
   579  			ms.StoreMessageInfo(mi)
   580  		}
   581  		return ms
   582  	}
   583  	return mi.MessageOf(x)
   584  }
   585  
   586  // Deprecated: Use UpdateConfigurationRequest.ProtoReflect.Descriptor instead.
   587  func (*UpdateConfigurationRequest) Descriptor() ([]byte, []int) {
   588  	return file_throttlerdata_proto_rawDescGZIP(), []int{7}
   589  }
   590  
   591  func (x *UpdateConfigurationRequest) GetThrottlerName() string {
   592  	if x != nil {
   593  		return x.ThrottlerName
   594  	}
   595  	return ""
   596  }
   597  
   598  func (x *UpdateConfigurationRequest) GetConfiguration() *Configuration {
   599  	if x != nil {
   600  		return x.Configuration
   601  	}
   602  	return nil
   603  }
   604  
   605  func (x *UpdateConfigurationRequest) GetCopyZeroValues() bool {
   606  	if x != nil {
   607  		return x.CopyZeroValues
   608  	}
   609  	return false
   610  }
   611  
   612  // UpdateConfigurationResponse is returned by the UpdateConfiguration RPC.
   613  type UpdateConfigurationResponse struct {
   614  	state         protoimpl.MessageState
   615  	sizeCache     protoimpl.SizeCache
   616  	unknownFields protoimpl.UnknownFields
   617  
   618  	// names is the list of throttler names which were updated.
   619  	Names []string `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"`
   620  }
   621  
   622  func (x *UpdateConfigurationResponse) Reset() {
   623  	*x = UpdateConfigurationResponse{}
   624  	if protoimpl.UnsafeEnabled {
   625  		mi := &file_throttlerdata_proto_msgTypes[8]
   626  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   627  		ms.StoreMessageInfo(mi)
   628  	}
   629  }
   630  
   631  func (x *UpdateConfigurationResponse) String() string {
   632  	return protoimpl.X.MessageStringOf(x)
   633  }
   634  
   635  func (*UpdateConfigurationResponse) ProtoMessage() {}
   636  
   637  func (x *UpdateConfigurationResponse) ProtoReflect() protoreflect.Message {
   638  	mi := &file_throttlerdata_proto_msgTypes[8]
   639  	if protoimpl.UnsafeEnabled && x != nil {
   640  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   641  		if ms.LoadMessageInfo() == nil {
   642  			ms.StoreMessageInfo(mi)
   643  		}
   644  		return ms
   645  	}
   646  	return mi.MessageOf(x)
   647  }
   648  
   649  // Deprecated: Use UpdateConfigurationResponse.ProtoReflect.Descriptor instead.
   650  func (*UpdateConfigurationResponse) Descriptor() ([]byte, []int) {
   651  	return file_throttlerdata_proto_rawDescGZIP(), []int{8}
   652  }
   653  
   654  func (x *UpdateConfigurationResponse) GetNames() []string {
   655  	if x != nil {
   656  		return x.Names
   657  	}
   658  	return nil
   659  }
   660  
   661  // ResetConfigurationRequest is the payload for the ResetConfiguration RPC.
   662  type ResetConfigurationRequest struct {
   663  	state         protoimpl.MessageState
   664  	sizeCache     protoimpl.SizeCache
   665  	unknownFields protoimpl.UnknownFields
   666  
   667  	// throttler_name specifies which throttler to reset. If empty, all active
   668  	// throttlers will be reset.
   669  	ThrottlerName string `protobuf:"bytes,1,opt,name=throttler_name,json=throttlerName,proto3" json:"throttler_name,omitempty"`
   670  }
   671  
   672  func (x *ResetConfigurationRequest) Reset() {
   673  	*x = ResetConfigurationRequest{}
   674  	if protoimpl.UnsafeEnabled {
   675  		mi := &file_throttlerdata_proto_msgTypes[9]
   676  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   677  		ms.StoreMessageInfo(mi)
   678  	}
   679  }
   680  
   681  func (x *ResetConfigurationRequest) String() string {
   682  	return protoimpl.X.MessageStringOf(x)
   683  }
   684  
   685  func (*ResetConfigurationRequest) ProtoMessage() {}
   686  
   687  func (x *ResetConfigurationRequest) ProtoReflect() protoreflect.Message {
   688  	mi := &file_throttlerdata_proto_msgTypes[9]
   689  	if protoimpl.UnsafeEnabled && x != nil {
   690  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   691  		if ms.LoadMessageInfo() == nil {
   692  			ms.StoreMessageInfo(mi)
   693  		}
   694  		return ms
   695  	}
   696  	return mi.MessageOf(x)
   697  }
   698  
   699  // Deprecated: Use ResetConfigurationRequest.ProtoReflect.Descriptor instead.
   700  func (*ResetConfigurationRequest) Descriptor() ([]byte, []int) {
   701  	return file_throttlerdata_proto_rawDescGZIP(), []int{9}
   702  }
   703  
   704  func (x *ResetConfigurationRequest) GetThrottlerName() string {
   705  	if x != nil {
   706  		return x.ThrottlerName
   707  	}
   708  	return ""
   709  }
   710  
   711  // ResetConfigurationResponse is returned by the ResetConfiguration RPC.
   712  type ResetConfigurationResponse struct {
   713  	state         protoimpl.MessageState
   714  	sizeCache     protoimpl.SizeCache
   715  	unknownFields protoimpl.UnknownFields
   716  
   717  	// names is the list of throttler names which were updated.
   718  	Names []string `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"`
   719  }
   720  
   721  func (x *ResetConfigurationResponse) Reset() {
   722  	*x = ResetConfigurationResponse{}
   723  	if protoimpl.UnsafeEnabled {
   724  		mi := &file_throttlerdata_proto_msgTypes[10]
   725  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   726  		ms.StoreMessageInfo(mi)
   727  	}
   728  }
   729  
   730  func (x *ResetConfigurationResponse) String() string {
   731  	return protoimpl.X.MessageStringOf(x)
   732  }
   733  
   734  func (*ResetConfigurationResponse) ProtoMessage() {}
   735  
   736  func (x *ResetConfigurationResponse) ProtoReflect() protoreflect.Message {
   737  	mi := &file_throttlerdata_proto_msgTypes[10]
   738  	if protoimpl.UnsafeEnabled && x != nil {
   739  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   740  		if ms.LoadMessageInfo() == nil {
   741  			ms.StoreMessageInfo(mi)
   742  		}
   743  		return ms
   744  	}
   745  	return mi.MessageOf(x)
   746  }
   747  
   748  // Deprecated: Use ResetConfigurationResponse.ProtoReflect.Descriptor instead.
   749  func (*ResetConfigurationResponse) Descriptor() ([]byte, []int) {
   750  	return file_throttlerdata_proto_rawDescGZIP(), []int{10}
   751  }
   752  
   753  func (x *ResetConfigurationResponse) GetNames() []string {
   754  	if x != nil {
   755  		return x.Names
   756  	}
   757  	return nil
   758  }
   759  
   760  var File_throttlerdata_proto protoreflect.FileDescriptor
   761  
   762  var file_throttlerdata_proto_rawDesc = []byte{
   763  	0x0a, 0x13, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e,
   764  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0d, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72,
   765  	0x64, 0x61, 0x74, 0x61, 0x22, 0x11, 0x0a, 0x0f, 0x4d, 0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x73,
   766  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x8e, 0x01, 0x0a, 0x10, 0x4d, 0x61, 0x78, 0x52,
   767  	0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05,
   768  	0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x68,
   769  	0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x78, 0x52,
   770  	0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x61, 0x74,
   771  	0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x61, 0x74, 0x65, 0x73, 0x1a, 0x38,
   772  	0x0a, 0x0a, 0x52, 0x61, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
   773  	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
   774  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76,
   775  	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x27, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x4d,
   776  	0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a,
   777  	0x04, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x72, 0x61, 0x74,
   778  	0x65, 0x22, 0x2a, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x52,
   779  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73,
   780  	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xaa, 0x06,
   781  	0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
   782  	0x3b, 0x0a, 0x1a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63,
   783  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x61, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x01, 0x20,
   784  	0x01, 0x28, 0x03, 0x52, 0x17, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69,
   785  	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x61, 0x67, 0x53, 0x65, 0x63, 0x12, 0x35, 0x0a, 0x17,
   786  	0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
   787  	0x6c, 0x61, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x6d,
   788  	0x61, 0x78, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x61, 0x67,
   789  	0x53, 0x65, 0x63, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x72,
   790  	0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69,
   791  	0x61, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x6e,
   792  	0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x6d, 0x61,
   793  	0x78, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x6d, 0x65,
   794  	0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x64, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18,
   795  	0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x11, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79,
   796  	0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x22, 0x6d, 0x69, 0x6e, 0x5f,
   797  	0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e,
   798  	0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x06,
   799  	0x20, 0x01, 0x28, 0x03, 0x52, 0x1e, 0x6d, 0x69, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
   800  	0x6e, 0x42, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65,
   801  	0x73, 0x53, 0x65, 0x63, 0x12, 0x4a, 0x0a, 0x22, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x72, 0x61,
   802  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x63,
   803  	0x72, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03,
   804  	0x52, 0x1e, 0x6d, 0x61, 0x78, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x74,
   805  	0x77, 0x65, 0x65, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x73, 0x53, 0x65, 0x63,
   806  	0x12, 0x4a, 0x0a, 0x22, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   807  	0x5f, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x5f, 0x64, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73,
   808  	0x65, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1e, 0x6d, 0x69,
   809  	0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e,
   810  	0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x73, 0x53, 0x65, 0x63, 0x12, 0x39, 0x0a, 0x19,
   811  	0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x6c, 0x6f, 0x67, 0x5f, 0x61,
   812  	0x63, 0x72, 0x6f, 0x73, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52,
   813  	0x16, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x6c, 0x6f, 0x67, 0x41, 0x63,
   814  	0x72, 0x6f, 0x73, 0x73, 0x53, 0x65, 0x63, 0x12, 0x39, 0x0a, 0x19, 0x69, 0x67, 0x6e, 0x6f, 0x72,
   815  	0x65, 0x5f, 0x6e, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c,
   816  	0x69, 0x63, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x69, 0x67, 0x6e, 0x6f,
   817  	0x72, 0x65, 0x4e, 0x53, 0x6c, 0x6f, 0x77, 0x65, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63,
   818  	0x61, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x6e, 0x5f, 0x73,
   819  	0x6c, 0x6f, 0x77, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x73, 0x18, 0x0b,
   820  	0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x4e, 0x53, 0x6c, 0x6f,
   821  	0x77, 0x65, 0x73, 0x74, 0x52, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x73, 0x12, 0x32, 0x0a, 0x16, 0x61,
   822  	0x67, 0x65, 0x5f, 0x62, 0x61, 0x64, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x66, 0x74, 0x65,
   823  	0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x61, 0x67, 0x65,
   824  	0x42, 0x61, 0x64, 0x52, 0x61, 0x74, 0x65, 0x41, 0x66, 0x74, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12,
   825  	0x2a, 0x0a, 0x11, 0x62, 0x61, 0x64, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x63, 0x72,
   826  	0x65, 0x61, 0x73, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x62, 0x61, 0x64, 0x52,
   827  	0x61, 0x74, 0x65, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x6d,
   828  	0x61, 0x78, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68,
   829  	0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x01,
   830  	0x52, 0x18, 0x6d, 0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x61, 0x63,
   831  	0x68, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22, 0x40, 0x0a, 0x17, 0x47, 0x65,
   832  	0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
   833  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c,
   834  	0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74,
   835  	0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe0, 0x01, 0x0a,
   836  	0x18, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
   837  	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0e, 0x63, 0x6f, 0x6e,
   838  	0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
   839  	0x0b, 0x32, 0x3b, 0x2e, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x64, 0x61, 0x74,
   840  	0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69,
   841  	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
   842  	0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e,
   843  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x5f,
   844  	0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   845  	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
   846  	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
   847  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c,
   848  	0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61,
   849  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
   850  	0xb1, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   851  	0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25,
   852  	0x0a, 0x0e, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
   853  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65,
   854  	0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75,
   855  	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74,
   856  	0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6e,
   857  	0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66,
   858  	0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x6f, 0x70,
   859  	0x79, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20,
   860  	0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x6f, 0x70, 0x79, 0x5a, 0x65, 0x72, 0x6f, 0x56, 0x61, 0x6c,
   861  	0x75, 0x65, 0x73, 0x22, 0x33, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
   862  	0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
   863  	0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
   864  	0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x42, 0x0a, 0x19, 0x52, 0x65, 0x73, 0x65,
   865  	0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
   866  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c,
   867  	0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74,
   868  	0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x32, 0x0a, 0x1a,
   869  	0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69,
   870  	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61,
   871  	0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73,
   872  	0x42, 0x2c, 0x5a, 0x2a, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x69,
   873  	0x74, 0x65, 0x73, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   874  	0x2f, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x62, 0x06,
   875  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   876  }
   877  
   878  var (
   879  	file_throttlerdata_proto_rawDescOnce sync.Once
   880  	file_throttlerdata_proto_rawDescData = file_throttlerdata_proto_rawDesc
   881  )
   882  
   883  func file_throttlerdata_proto_rawDescGZIP() []byte {
   884  	file_throttlerdata_proto_rawDescOnce.Do(func() {
   885  		file_throttlerdata_proto_rawDescData = protoimpl.X.CompressGZIP(file_throttlerdata_proto_rawDescData)
   886  	})
   887  	return file_throttlerdata_proto_rawDescData
   888  }
   889  
   890  var file_throttlerdata_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
   891  var file_throttlerdata_proto_goTypes = []interface{}{
   892  	(*MaxRatesRequest)(nil),             // 0: throttlerdata.MaxRatesRequest
   893  	(*MaxRatesResponse)(nil),            // 1: throttlerdata.MaxRatesResponse
   894  	(*SetMaxRateRequest)(nil),           // 2: throttlerdata.SetMaxRateRequest
   895  	(*SetMaxRateResponse)(nil),          // 3: throttlerdata.SetMaxRateResponse
   896  	(*Configuration)(nil),               // 4: throttlerdata.Configuration
   897  	(*GetConfigurationRequest)(nil),     // 5: throttlerdata.GetConfigurationRequest
   898  	(*GetConfigurationResponse)(nil),    // 6: throttlerdata.GetConfigurationResponse
   899  	(*UpdateConfigurationRequest)(nil),  // 7: throttlerdata.UpdateConfigurationRequest
   900  	(*UpdateConfigurationResponse)(nil), // 8: throttlerdata.UpdateConfigurationResponse
   901  	(*ResetConfigurationRequest)(nil),   // 9: throttlerdata.ResetConfigurationRequest
   902  	(*ResetConfigurationResponse)(nil),  // 10: throttlerdata.ResetConfigurationResponse
   903  	nil,                                 // 11: throttlerdata.MaxRatesResponse.RatesEntry
   904  	nil,                                 // 12: throttlerdata.GetConfigurationResponse.ConfigurationsEntry
   905  }
   906  var file_throttlerdata_proto_depIdxs = []int32{
   907  	11, // 0: throttlerdata.MaxRatesResponse.rates:type_name -> throttlerdata.MaxRatesResponse.RatesEntry
   908  	12, // 1: throttlerdata.GetConfigurationResponse.configurations:type_name -> throttlerdata.GetConfigurationResponse.ConfigurationsEntry
   909  	4,  // 2: throttlerdata.UpdateConfigurationRequest.configuration:type_name -> throttlerdata.Configuration
   910  	4,  // 3: throttlerdata.GetConfigurationResponse.ConfigurationsEntry.value:type_name -> throttlerdata.Configuration
   911  	4,  // [4:4] is the sub-list for method output_type
   912  	4,  // [4:4] is the sub-list for method input_type
   913  	4,  // [4:4] is the sub-list for extension type_name
   914  	4,  // [4:4] is the sub-list for extension extendee
   915  	0,  // [0:4] is the sub-list for field type_name
   916  }
   917  
   918  func init() { file_throttlerdata_proto_init() }
   919  func file_throttlerdata_proto_init() {
   920  	if File_throttlerdata_proto != nil {
   921  		return
   922  	}
   923  	if !protoimpl.UnsafeEnabled {
   924  		file_throttlerdata_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   925  			switch v := v.(*MaxRatesRequest); i {
   926  			case 0:
   927  				return &v.state
   928  			case 1:
   929  				return &v.sizeCache
   930  			case 2:
   931  				return &v.unknownFields
   932  			default:
   933  				return nil
   934  			}
   935  		}
   936  		file_throttlerdata_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   937  			switch v := v.(*MaxRatesResponse); i {
   938  			case 0:
   939  				return &v.state
   940  			case 1:
   941  				return &v.sizeCache
   942  			case 2:
   943  				return &v.unknownFields
   944  			default:
   945  				return nil
   946  			}
   947  		}
   948  		file_throttlerdata_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   949  			switch v := v.(*SetMaxRateRequest); i {
   950  			case 0:
   951  				return &v.state
   952  			case 1:
   953  				return &v.sizeCache
   954  			case 2:
   955  				return &v.unknownFields
   956  			default:
   957  				return nil
   958  			}
   959  		}
   960  		file_throttlerdata_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   961  			switch v := v.(*SetMaxRateResponse); i {
   962  			case 0:
   963  				return &v.state
   964  			case 1:
   965  				return &v.sizeCache
   966  			case 2:
   967  				return &v.unknownFields
   968  			default:
   969  				return nil
   970  			}
   971  		}
   972  		file_throttlerdata_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   973  			switch v := v.(*Configuration); i {
   974  			case 0:
   975  				return &v.state
   976  			case 1:
   977  				return &v.sizeCache
   978  			case 2:
   979  				return &v.unknownFields
   980  			default:
   981  				return nil
   982  			}
   983  		}
   984  		file_throttlerdata_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
   985  			switch v := v.(*GetConfigurationRequest); i {
   986  			case 0:
   987  				return &v.state
   988  			case 1:
   989  				return &v.sizeCache
   990  			case 2:
   991  				return &v.unknownFields
   992  			default:
   993  				return nil
   994  			}
   995  		}
   996  		file_throttlerdata_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
   997  			switch v := v.(*GetConfigurationResponse); i {
   998  			case 0:
   999  				return &v.state
  1000  			case 1:
  1001  				return &v.sizeCache
  1002  			case 2:
  1003  				return &v.unknownFields
  1004  			default:
  1005  				return nil
  1006  			}
  1007  		}
  1008  		file_throttlerdata_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1009  			switch v := v.(*UpdateConfigurationRequest); i {
  1010  			case 0:
  1011  				return &v.state
  1012  			case 1:
  1013  				return &v.sizeCache
  1014  			case 2:
  1015  				return &v.unknownFields
  1016  			default:
  1017  				return nil
  1018  			}
  1019  		}
  1020  		file_throttlerdata_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1021  			switch v := v.(*UpdateConfigurationResponse); i {
  1022  			case 0:
  1023  				return &v.state
  1024  			case 1:
  1025  				return &v.sizeCache
  1026  			case 2:
  1027  				return &v.unknownFields
  1028  			default:
  1029  				return nil
  1030  			}
  1031  		}
  1032  		file_throttlerdata_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1033  			switch v := v.(*ResetConfigurationRequest); i {
  1034  			case 0:
  1035  				return &v.state
  1036  			case 1:
  1037  				return &v.sizeCache
  1038  			case 2:
  1039  				return &v.unknownFields
  1040  			default:
  1041  				return nil
  1042  			}
  1043  		}
  1044  		file_throttlerdata_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1045  			switch v := v.(*ResetConfigurationResponse); i {
  1046  			case 0:
  1047  				return &v.state
  1048  			case 1:
  1049  				return &v.sizeCache
  1050  			case 2:
  1051  				return &v.unknownFields
  1052  			default:
  1053  				return nil
  1054  			}
  1055  		}
  1056  	}
  1057  	type x struct{}
  1058  	out := protoimpl.TypeBuilder{
  1059  		File: protoimpl.DescBuilder{
  1060  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1061  			RawDescriptor: file_throttlerdata_proto_rawDesc,
  1062  			NumEnums:      0,
  1063  			NumMessages:   13,
  1064  			NumExtensions: 0,
  1065  			NumServices:   0,
  1066  		},
  1067  		GoTypes:           file_throttlerdata_proto_goTypes,
  1068  		DependencyIndexes: file_throttlerdata_proto_depIdxs,
  1069  		MessageInfos:      file_throttlerdata_proto_msgTypes,
  1070  	}.Build()
  1071  	File_throttlerdata_proto = out.File
  1072  	file_throttlerdata_proto_rawDesc = nil
  1073  	file_throttlerdata_proto_goTypes = nil
  1074  	file_throttlerdata_proto_depIdxs = nil
  1075  }