Class ConnectionPoolConfigurationInfo
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<ConnectionPoolConfigurationInfo.Builder,
ConnectionPoolConfigurationInfo>
Displays the settings that control the size and behavior of the connection pool associated with a
DBProxyTarget
.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionbuilder()
final Integer
The number of seconds for a proxy to wait for a connection to become available in the connection pool.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the SessionPinningFilters property.final String
One or more SQL statements for the proxy to run when opening each new database connection.final Integer
The maximum size of the connection pool for each target in a target group.final Integer
Controls how actively the proxy closes idle database connections in the connection pool.static Class
<? extends ConnectionPoolConfigurationInfo.Builder> Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
maxConnectionsPercent
The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the
max_connections
setting for the RDS DB instance or Aurora DB cluster used by the target group.- Returns:
- The maximum size of the connection pool for each target in a target group. The value is expressed as a
percentage of the
max_connections
setting for the RDS DB instance or Aurora DB cluster used by the target group.
-
maxIdleConnectionsPercent
Controls how actively the proxy closes idle database connections in the connection pool. The value is expressed as a percentage of the
max_connections
setting for the RDS DB instance or Aurora DB cluster used by the target group. With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database.- Returns:
- Controls how actively the proxy closes idle database connections in the connection pool. The value is
expressed as a percentage of the
max_connections
setting for the RDS DB instance or Aurora DB cluster used by the target group. With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database.
-
connectionBorrowTimeout
The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.
- Returns:
- The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.
-
hasSessionPinningFilters
public final boolean hasSessionPinningFilters()For responses, this returns true if the service returned a value for the SessionPinningFilters property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
sessionPinningFilters
Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. This setting is only supported for MySQL engine family databases. Currently, the only allowed value is
EXCLUDE_VARIABLE_SETS
.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSessionPinningFilters()
method.- Returns:
- Each item in the list represents a class of SQL operations that normally cause all later statements in a
session using a proxy to be pinned to the same underlying database connection. Including an item in the
list exempts that class of SQL operations from the pinning behavior. This setting is only supported for
MySQL engine family databases. Currently, the only allowed value is
EXCLUDE_VARIABLE_SETS
.
-
initQuery
One or more SQL statements for the proxy to run when opening each new database connection. The setting is typically used with
SET
statements to make sure that each connection has identical settings. The query added here must be valid. For including multiple variables in a single SET statement, use a comma separator. This is an optional field.For example:
SET variable1=value1, variable2=value2
Since you can access initialization query as part of target group configuration, it is not protected by authentication or cryptographic methods. Anyone with access to view or manage your proxy target group configuration can view the initialization query. You should not add sensitive data, such as passwords or long-lived encryption keys, to this option.
- Returns:
- One or more SQL statements for the proxy to run when opening each new database connection. The setting is
typically used with
SET
statements to make sure that each connection has identical settings. The query added here must be valid. For including multiple variables in a single SET statement, use a comma separator. This is an optional field.For example:
SET variable1=value1, variable2=value2
Since you can access initialization query as part of target group configuration, it is not protected by authentication or cryptographic methods. Anyone with access to view or manage your proxy target group configuration can view the initialization query. You should not add sensitive data, such as passwords or long-lived encryption keys, to this option.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<ConnectionPoolConfigurationInfo.Builder,
ConnectionPoolConfigurationInfo> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
- Returns:
- The mapping between the field name and its corresponding field.
-