Documentation ¶
Index ¶
- Constants
- type Config
- func (c *Config) Clock() clockwork.Clock
- func (c *Config) CreateSessionTimeout() time.Duration
- func (c *Config) DeleteTimeout() time.Duration
- func (c *Config) IdleKeepAliveThreshold() intdeprecated
- func (c *Config) IdleThreshold() time.Duration
- func (c *Config) IgnoreTruncated() bool
- func (c *Config) KeepAliveMinSize() intdeprecated
- func (c *Config) KeepAliveTimeout() time.Durationdeprecated
- func (c *Config) SessionUsageLimit() uint64
- func (c *Config) SizeLimit() int
- func (c *Config) Trace() *trace.Table
- type Option
- func With(config config.Common) Option
- func WithClock(clock clockwork.Clock) Option
- func WithCreateSessionTimeout(createSessionTimeout time.Duration) Option
- func WithDeleteTimeout(deleteTimeout time.Duration) Option
- func WithIdleKeepAliveThreshold(idleKeepAliveThreshold int) Optiondeprecated
- func WithIdleThreshold(idleThreshold time.Duration) Option
- func WithIgnoreTruncated() Option
- func WithKeepAliveMinSize(keepAliveMinSize int) Optiondeprecated
- func WithKeepAliveTimeout(keepAliveTimeout time.Duration) Optiondeprecated
- func WithPoolSessionUsageLimit(sessionUsageLimit uint64) Option
- func WithSizeLimit(sizeLimit int) Option
- func WithTrace(trace *trace.Table, opts ...trace.TableComposeOption) Option
Constants ¶
const ( DefaultSessionPoolDeleteTimeout = 500 * time.Millisecond DefaultSessionPoolCreateSessionTimeout = 5 * time.Second DefaultSessionPoolSizeLimit = 50 DefaultSessionPoolIdleThreshold = 5 * time.Minute // Deprecated: table client do not supports background session keep-aliving now. // Will be removed after Oct 2024. // Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated DefaultKeepAliveMinSize = 10 // Deprecated: table client do not supports background session keep-aliving now. // Will be removed after Oct 2024. // Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated DefaultIdleKeepAliveThreshold = 2 // Deprecated: table client do not supports background session keep-aliving now. // Will be removed after Oct 2024. // Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated DefaultSessionPoolKeepAliveTimeout = 500 * time.Millisecond )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
Config is a configuration of table client
func (*Config) CreateSessionTimeout ¶
CreateSessionTimeout limits maximum time spent on Create session request
func (*Config) DeleteTimeout ¶
DeleteTimeout limits maximum time spent on Delete request
If DeleteTimeout is less than or equal to zero then the DefaultSessionPoolDeleteTimeout is used.
func (*Config) IdleKeepAliveThreshold
deprecated
IdleKeepAliveThreshold is a number of keepAlive messages to call before the session is removed if it is an excess session (see KeepAliveMinSize) This means that session will be deleted after the expiration of lifetime = IdleThreshold * IdleKeepAliveThreshold If IdleKeepAliveThreshold is less than zero then it will be treated as infinite and no sessions will be removed ever. If IdleKeepAliveThreshold is equal to zero, it will be set to DefaultIdleKeepAliveThreshold
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func (*Config) IdleThreshold ¶
IdleThreshold is a maximum duration between any activity within session. If this threshold reached, idle session will be closed
If IdleThreshold is less than zero then there is no idle limit. If IdleThreshold is zero, then the DefaultSessionPoolIdleThreshold value is used.
func (*Config) IgnoreTruncated ¶ added in v3.36.0
IgnoreTruncated specifies behavior on truncated flag
func (*Config) KeepAliveMinSize
deprecated
KeepAliveMinSize is a lower bound for sessions in the pool. If there are more sessions open, then the excess idle ones will be closed and removed after IdleKeepAliveThreshold is reached for each of them. If KeepAliveMinSize is less than zero, then no sessions will be preserved If KeepAliveMinSize is zero, the DefaultKeepAliveMinSize is used
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func (*Config) KeepAliveTimeout
deprecated
KeepAliveTimeout limits maximum time spent on KeepAlive request If KeepAliveTimeout is less than or equal to zero then the DefaultSessionPoolKeepAliveTimeout is used.
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func (*Config) SessionUsageLimit ¶ added in v3.80.10
type Option ¶
type Option func(*Config)
func WithCreateSessionTimeout ¶
WithCreateSessionTimeout limits maximum time spent on Create session request If createSessionTimeout is less than or equal to zero then no used timeout on create session request
func WithDeleteTimeout ¶
WithDeleteTimeout limits maximum time spent on Delete request If deleteTimeout is less than or equal to zero then the DefaultSessionPoolDeleteTimeout is used.
func WithIdleKeepAliveThreshold
deprecated
WithIdleKeepAliveThreshold defines number of keepAlive messages to call before the session is removed if it is an excess session (see KeepAliveMinSize) This means that session will be deleted after the expiration of lifetime = IdleThreshold * IdleKeepAliveThreshold If IdleKeepAliveThreshold is less than zero then it will be treated as infinite and no sessions will be removed ever. If IdleKeepAliveThreshold is equal to zero, it will be set to DefaultIdleKeepAliveThreshold
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func WithIdleThreshold ¶
WithIdleThreshold sets maximum duration between any activity within session. If this threshold reached, session will be closed.
If idleThreshold is less than zero then there is no idle limit. If idleThreshold is zero, then the DefaultSessionPoolIdleThreshold value is used.
func WithIgnoreTruncated ¶ added in v3.36.0
func WithIgnoreTruncated() Option
WithIgnoreTruncated disables errors on truncated flag
func WithKeepAliveMinSize
deprecated
WithKeepAliveMinSize defines lower bound for sessions in the pool. If there are more sessions open, then the excess idle ones will be closed and removed after IdleKeepAliveThreshold is reached for each of them. If keepAliveMinSize is less than zero, then no sessions will be preserved If keepAliveMinSize is zero, the DefaultKeepAliveMinSize is used
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func WithKeepAliveTimeout
deprecated
WithKeepAliveTimeout limits maximum time spent on KeepAlive request If keepAliveTimeout is less than or equal to zero then the DefaultSessionPoolKeepAliveTimeout is used.
Deprecated: table client do not supports background session keep-aliving now. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
func WithPoolSessionUsageLimit ¶ added in v3.80.10
func WithSizeLimit ¶
WithSizeLimit defines upper bound of pooled sessions. If sizeLimit is less than or equal to zero then the DefaultSessionPoolSizeLimit variable is used as a limit.