Class: Google::Cloud::Bigtable::V2::SessionClientConfiguration

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/bigtable/v2/session.rb

Overview

Configuration for the Session API. Internal usage only.

Defined Under Namespace

Classes: ChannelPoolConfiguration, SessionPoolConfiguration

Instance Attribute Summary collapse

Instance Attribute Details

#channel_configuration::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration

Returns Configuration for the channel pool.



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
# File 'proto_docs/google/bigtable/v2/session.rb', line 103

class SessionClientConfiguration
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the channel pool.
  # @!attribute [rw] min_server_count
  #   @return [::Integer]
  #     The minimum number of distcint servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at least this many
  #     distinct servers, but may have multiple channels connected to the same
  #     server (e.g. the client may have M channels on N machines, where M > N).
  # @!attribute [rw] max_server_count
  #   @return [::Integer]
  #     The maximum number of distinct servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at most this many
  #     distinct servers.
  # @!attribute [rw] per_server_session_count
  #   @return [::Integer]
  #     Soft maximum for how many sessions are allowed per server. Normally, the
  #     client will ensure that it does not host more than this count of sessions
  #     per server, unless there are other limits encountered (e.g. the connected
  #     servers is already at max_servers).
  # @!attribute [rw] direct_access_with_fallback
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessWithFallback]
  #     DirectAccess with a fallback to CloudPath.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_with_fallback`, `direct_access_only`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] direct_access_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessOnly]
  #     DirectAccess only.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_only`, `direct_access_with_fallback`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] cloud_path_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::CloudPathOnly]
  #     CloudPath only.
  #
  #     Note: The following fields are mutually exclusive: `cloud_path_only`, `direct_access_with_fallback`, `direct_access_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class ChannelPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # A channel mode which allows DirectAccess with a fallback to CloudPath if
    # DirectAccess is unavailable.
    # @!attribute [rw] error_rate_threshold
    #   @return [::Float]
    #     The threshold for errors on DirectAccess to trigger CloudPath fallback.
    #     The error rate is calculated based on a count of vRPCs with errors
    #     divided by a total count of vRPCs, over a rolling window of the past
    #     check_interval. If this ratio exceeds this threshold, the fallback to
    #     CloudPath is triggered. [0, 1].
    # @!attribute [rw] check_interval
    #   @return [::Google::Protobuf::Duration]
    #     The interval to check the error rate over.
    class DirectAccessWithFallback
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows DirectAccess.
    class DirectAccessOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows CloudPath.
    class CloudPathOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Configuration for the session pools. Session pools are tied to a scope
  # like a table, an app profile, and a permission.
  # @!attribute [rw] headroom
  #   @return [::Float]
  #     Fraction of idle sessions to keep in order to manage an increase in
  #     requests-in-flight. For example, a headroom of 0.5 will keep enough
  #     sessions to deal with a 50% increase in QPS.
  # @!attribute [rw] min_session_count
  #   @return [::Integer]
  #     The minimum number of sessions for a given scope.
  # @!attribute [rw] max_session_count
  #   @return [::Integer]
  #     The maximum number of sessions for a given scope.
  # @!attribute [rw] new_session_queue_length
  #   @return [::Integer]
  #     Number of vRPCs that can be queued per starting session.
  # @!attribute [rw] new_session_creation_budget
  #   @return [::Integer]
  #     How many concurrent session establishments are allowed. The client will
  #     hold onto a count against this budget whenever it is establishing a new
  #     session, and release that count once the session is successfully
  #     established or failed to establish.
  # @!attribute [rw] new_session_creation_penalty
  #   @return [::Google::Protobuf::Duration]
  #     How long to penalize the creation budget for a failed session creation
  #     attempt.
  # @!attribute [rw] consecutive_session_failure_threshold
  #   @return [::Integer]
  #     A threshold for cancelling all pending vRPCs based on how many
  #     consecutive session establishment errors have been observed. The client
  #     will eagerly cancel queued vRPCs after this threshold is met to avoid
  #     them waiting their entire deadlines before terminating (while waiting for
  #     any session to establish to actually send the vRPC).
  # @!attribute [rw] load_balancing_options
  #   @return [::Google::Cloud::Bigtable::V2::LoadBalancingOptions]
  #     How to balance vRPC load over connections to AFEs.
  #     Set only if session_load > 0.
  class SessionPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#load_balancing_options::Google::Cloud::Bigtable::V2::LoadBalancingOptions

Deprecated.

This field is deprecated and may be removed in the next major version update.



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
# File 'proto_docs/google/bigtable/v2/session.rb', line 103

class SessionClientConfiguration
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the channel pool.
  # @!attribute [rw] min_server_count
  #   @return [::Integer]
  #     The minimum number of distcint servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at least this many
  #     distinct servers, but may have multiple channels connected to the same
  #     server (e.g. the client may have M channels on N machines, where M > N).
  # @!attribute [rw] max_server_count
  #   @return [::Integer]
  #     The maximum number of distinct servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at most this many
  #     distinct servers.
  # @!attribute [rw] per_server_session_count
  #   @return [::Integer]
  #     Soft maximum for how many sessions are allowed per server. Normally, the
  #     client will ensure that it does not host more than this count of sessions
  #     per server, unless there are other limits encountered (e.g. the connected
  #     servers is already at max_servers).
  # @!attribute [rw] direct_access_with_fallback
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessWithFallback]
  #     DirectAccess with a fallback to CloudPath.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_with_fallback`, `direct_access_only`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] direct_access_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessOnly]
  #     DirectAccess only.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_only`, `direct_access_with_fallback`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] cloud_path_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::CloudPathOnly]
  #     CloudPath only.
  #
  #     Note: The following fields are mutually exclusive: `cloud_path_only`, `direct_access_with_fallback`, `direct_access_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class ChannelPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # A channel mode which allows DirectAccess with a fallback to CloudPath if
    # DirectAccess is unavailable.
    # @!attribute [rw] error_rate_threshold
    #   @return [::Float]
    #     The threshold for errors on DirectAccess to trigger CloudPath fallback.
    #     The error rate is calculated based on a count of vRPCs with errors
    #     divided by a total count of vRPCs, over a rolling window of the past
    #     check_interval. If this ratio exceeds this threshold, the fallback to
    #     CloudPath is triggered. [0, 1].
    # @!attribute [rw] check_interval
    #   @return [::Google::Protobuf::Duration]
    #     The interval to check the error rate over.
    class DirectAccessWithFallback
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows DirectAccess.
    class DirectAccessOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows CloudPath.
    class CloudPathOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Configuration for the session pools. Session pools are tied to a scope
  # like a table, an app profile, and a permission.
  # @!attribute [rw] headroom
  #   @return [::Float]
  #     Fraction of idle sessions to keep in order to manage an increase in
  #     requests-in-flight. For example, a headroom of 0.5 will keep enough
  #     sessions to deal with a 50% increase in QPS.
  # @!attribute [rw] min_session_count
  #   @return [::Integer]
  #     The minimum number of sessions for a given scope.
  # @!attribute [rw] max_session_count
  #   @return [::Integer]
  #     The maximum number of sessions for a given scope.
  # @!attribute [rw] new_session_queue_length
  #   @return [::Integer]
  #     Number of vRPCs that can be queued per starting session.
  # @!attribute [rw] new_session_creation_budget
  #   @return [::Integer]
  #     How many concurrent session establishments are allowed. The client will
  #     hold onto a count against this budget whenever it is establishing a new
  #     session, and release that count once the session is successfully
  #     established or failed to establish.
  # @!attribute [rw] new_session_creation_penalty
  #   @return [::Google::Protobuf::Duration]
  #     How long to penalize the creation budget for a failed session creation
  #     attempt.
  # @!attribute [rw] consecutive_session_failure_threshold
  #   @return [::Integer]
  #     A threshold for cancelling all pending vRPCs based on how many
  #     consecutive session establishment errors have been observed. The client
  #     will eagerly cancel queued vRPCs after this threshold is met to avoid
  #     them waiting their entire deadlines before terminating (while waiting for
  #     any session to establish to actually send the vRPC).
  # @!attribute [rw] load_balancing_options
  #   @return [::Google::Cloud::Bigtable::V2::LoadBalancingOptions]
  #     How to balance vRPC load over connections to AFEs.
  #     Set only if session_load > 0.
  class SessionPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#session_load::Float

Returns What share of requests should operate on a session, [0, 1]. The rest should operate on the old-style API.

Returns:

  • (::Float)

    What share of requests should operate on a session, [0, 1]. The rest should operate on the old-style API.



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
# File 'proto_docs/google/bigtable/v2/session.rb', line 103

class SessionClientConfiguration
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the channel pool.
  # @!attribute [rw] min_server_count
  #   @return [::Integer]
  #     The minimum number of distcint servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at least this many
  #     distinct servers, but may have multiple channels connected to the same
  #     server (e.g. the client may have M channels on N machines, where M > N).
  # @!attribute [rw] max_server_count
  #   @return [::Integer]
  #     The maximum number of distinct servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at most this many
  #     distinct servers.
  # @!attribute [rw] per_server_session_count
  #   @return [::Integer]
  #     Soft maximum for how many sessions are allowed per server. Normally, the
  #     client will ensure that it does not host more than this count of sessions
  #     per server, unless there are other limits encountered (e.g. the connected
  #     servers is already at max_servers).
  # @!attribute [rw] direct_access_with_fallback
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessWithFallback]
  #     DirectAccess with a fallback to CloudPath.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_with_fallback`, `direct_access_only`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] direct_access_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessOnly]
  #     DirectAccess only.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_only`, `direct_access_with_fallback`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] cloud_path_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::CloudPathOnly]
  #     CloudPath only.
  #
  #     Note: The following fields are mutually exclusive: `cloud_path_only`, `direct_access_with_fallback`, `direct_access_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class ChannelPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # A channel mode which allows DirectAccess with a fallback to CloudPath if
    # DirectAccess is unavailable.
    # @!attribute [rw] error_rate_threshold
    #   @return [::Float]
    #     The threshold for errors on DirectAccess to trigger CloudPath fallback.
    #     The error rate is calculated based on a count of vRPCs with errors
    #     divided by a total count of vRPCs, over a rolling window of the past
    #     check_interval. If this ratio exceeds this threshold, the fallback to
    #     CloudPath is triggered. [0, 1].
    # @!attribute [rw] check_interval
    #   @return [::Google::Protobuf::Duration]
    #     The interval to check the error rate over.
    class DirectAccessWithFallback
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows DirectAccess.
    class DirectAccessOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows CloudPath.
    class CloudPathOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Configuration for the session pools. Session pools are tied to a scope
  # like a table, an app profile, and a permission.
  # @!attribute [rw] headroom
  #   @return [::Float]
  #     Fraction of idle sessions to keep in order to manage an increase in
  #     requests-in-flight. For example, a headroom of 0.5 will keep enough
  #     sessions to deal with a 50% increase in QPS.
  # @!attribute [rw] min_session_count
  #   @return [::Integer]
  #     The minimum number of sessions for a given scope.
  # @!attribute [rw] max_session_count
  #   @return [::Integer]
  #     The maximum number of sessions for a given scope.
  # @!attribute [rw] new_session_queue_length
  #   @return [::Integer]
  #     Number of vRPCs that can be queued per starting session.
  # @!attribute [rw] new_session_creation_budget
  #   @return [::Integer]
  #     How many concurrent session establishments are allowed. The client will
  #     hold onto a count against this budget whenever it is establishing a new
  #     session, and release that count once the session is successfully
  #     established or failed to establish.
  # @!attribute [rw] new_session_creation_penalty
  #   @return [::Google::Protobuf::Duration]
  #     How long to penalize the creation budget for a failed session creation
  #     attempt.
  # @!attribute [rw] consecutive_session_failure_threshold
  #   @return [::Integer]
  #     A threshold for cancelling all pending vRPCs based on how many
  #     consecutive session establishment errors have been observed. The client
  #     will eagerly cancel queued vRPCs after this threshold is met to avoid
  #     them waiting their entire deadlines before terminating (while waiting for
  #     any session to establish to actually send the vRPC).
  # @!attribute [rw] load_balancing_options
  #   @return [::Google::Cloud::Bigtable::V2::LoadBalancingOptions]
  #     How to balance vRPC load over connections to AFEs.
  #     Set only if session_load > 0.
  class SessionPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#session_pool_configuration::Google::Cloud::Bigtable::V2::SessionClientConfiguration::SessionPoolConfiguration

Returns Configuration for the session pools.



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
# File 'proto_docs/google/bigtable/v2/session.rb', line 103

class SessionClientConfiguration
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the channel pool.
  # @!attribute [rw] min_server_count
  #   @return [::Integer]
  #     The minimum number of distcint servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at least this many
  #     distinct servers, but may have multiple channels connected to the same
  #     server (e.g. the client may have M channels on N machines, where M > N).
  # @!attribute [rw] max_server_count
  #   @return [::Integer]
  #     The maximum number of distinct servers to connect to in the channel pool.
  #     The client will ensure that the channel pool will have at most this many
  #     distinct servers.
  # @!attribute [rw] per_server_session_count
  #   @return [::Integer]
  #     Soft maximum for how many sessions are allowed per server. Normally, the
  #     client will ensure that it does not host more than this count of sessions
  #     per server, unless there are other limits encountered (e.g. the connected
  #     servers is already at max_servers).
  # @!attribute [rw] direct_access_with_fallback
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessWithFallback]
  #     DirectAccess with a fallback to CloudPath.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_with_fallback`, `direct_access_only`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] direct_access_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::DirectAccessOnly]
  #     DirectAccess only.
  #
  #     Note: The following fields are mutually exclusive: `direct_access_only`, `direct_access_with_fallback`, `cloud_path_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] cloud_path_only
  #   @return [::Google::Cloud::Bigtable::V2::SessionClientConfiguration::ChannelPoolConfiguration::CloudPathOnly]
  #     CloudPath only.
  #
  #     Note: The following fields are mutually exclusive: `cloud_path_only`, `direct_access_with_fallback`, `direct_access_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class ChannelPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # A channel mode which allows DirectAccess with a fallback to CloudPath if
    # DirectAccess is unavailable.
    # @!attribute [rw] error_rate_threshold
    #   @return [::Float]
    #     The threshold for errors on DirectAccess to trigger CloudPath fallback.
    #     The error rate is calculated based on a count of vRPCs with errors
    #     divided by a total count of vRPCs, over a rolling window of the past
    #     check_interval. If this ratio exceeds this threshold, the fallback to
    #     CloudPath is triggered. [0, 1].
    # @!attribute [rw] check_interval
    #   @return [::Google::Protobuf::Duration]
    #     The interval to check the error rate over.
    class DirectAccessWithFallback
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows DirectAccess.
    class DirectAccessOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # A channel mode which only allows CloudPath.
    class CloudPathOnly
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Configuration for the session pools. Session pools are tied to a scope
  # like a table, an app profile, and a permission.
  # @!attribute [rw] headroom
  #   @return [::Float]
  #     Fraction of idle sessions to keep in order to manage an increase in
  #     requests-in-flight. For example, a headroom of 0.5 will keep enough
  #     sessions to deal with a 50% increase in QPS.
  # @!attribute [rw] min_session_count
  #   @return [::Integer]
  #     The minimum number of sessions for a given scope.
  # @!attribute [rw] max_session_count
  #   @return [::Integer]
  #     The maximum number of sessions for a given scope.
  # @!attribute [rw] new_session_queue_length
  #   @return [::Integer]
  #     Number of vRPCs that can be queued per starting session.
  # @!attribute [rw] new_session_creation_budget
  #   @return [::Integer]
  #     How many concurrent session establishments are allowed. The client will
  #     hold onto a count against this budget whenever it is establishing a new
  #     session, and release that count once the session is successfully
  #     established or failed to establish.
  # @!attribute [rw] new_session_creation_penalty
  #   @return [::Google::Protobuf::Duration]
  #     How long to penalize the creation budget for a failed session creation
  #     attempt.
  # @!attribute [rw] consecutive_session_failure_threshold
  #   @return [::Integer]
  #     A threshold for cancelling all pending vRPCs based on how many
  #     consecutive session establishment errors have been observed. The client
  #     will eagerly cancel queued vRPCs after this threshold is met to avoid
  #     them waiting their entire deadlines before terminating (while waiting for
  #     any session to establish to actually send the vRPC).
  # @!attribute [rw] load_balancing_options
  #   @return [::Google::Cloud::Bigtable::V2::LoadBalancingOptions]
  #     How to balance vRPC load over connections to AFEs.
  #     Set only if session_load > 0.
  class SessionPoolConfiguration
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end