Documentation ¶
Index ¶
- Constants
- Variables
- type Config
- type Option
- func WithBalancer(balancer ibalancer.Balancer) Option
- func WithCertificate(certificate *x509.Certificate) Option
- func WithConnectionTTL(ttl time.Duration) Option
- func WithCredentials(credentials credentials.Credentials) Option
- func WithDatabase(database string) Option
- func WithDialTimeout(timeout time.Duration) Option
- func WithDiscoveryInterval(discoveryInterval time.Duration) Option
- func WithEndpoint(endpoint string) Option
- func WithGrpcOptions(option ...grpc.DialOption) Option
- func WithOperationCancelAfter(operationCancelAfter time.Duration) Option
- func WithOperationTimeout(operationTimeout time.Duration) Option
- func WithRequestTimeout(requestTimeout time.Duration) Option
- func WithRequestsType(requestsType string) Option
- func WithSecure(secure bool) Option
- func WithStreamTimeout(streamTimeout time.Duration) Option
- func WithTrace(trace trace.Driver) Option
- func WithUserAgent(userAgent string) Option
Constants ¶
View Source
const (
DefaultDiscoveryInterval = time.Minute
)
Variables ¶
View Source
var ( // DefaultKeepaliveInterval contains default duration between grpc keepalive DefaultKeepaliveInterval = 10 * time.Second MinKeepaliveInterval = 10 * time.Second DefaultGRPCMsgSize = 64 * 1024 * 1024 // 64MB DefaultGrpcConnectionPolicy = keepalive.ClientParameters{ Time: DefaultKeepaliveInterval, Timeout: MinKeepaliveInterval, PermitWithoutStream: true, } )
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config interface { // Endpoint is a required starting endpoint for connect Endpoint() string // Database is a required database name. Database() string // Secure is an flag for secure connection Secure() bool // Credentials is an ydb client credentials. // In most cases Credentials are required. Credentials() ydbCredentials.Credentials // Trace contains driver tracing options. Trace() trace.Driver // RequestTimeout is the maximum amount of time a Call() will wait for an // operation to complete. // If RequestTimeout is zero then no timeout is used. RequestTimeout() time.Duration // StreamTimeout is the maximum amount of time a StreamRead() will wait for // an operation to complete. // If StreamTimeout is zero then no timeout is used. StreamTimeout() time.Duration // OperationTimeout is the maximum amount of time a YDB server will process // an operation. After timeout exceeds YDB will try to cancel operation and // regardless of the cancellation appropriate error will be returned to // the client. // If OperationTimeout is zero then no timeout is used. OperationTimeout() time.Duration // OperationCancelAfter is the maximum amount of time a YDB server will process an // operation. After timeout exceeds YDB will try to cancel operation and if // it succeeds appropriate error will be returned to the client; otherwise // processing will be continued. // If OperationCancelAfter is zero then no timeout is used. OperationCancelAfter() time.Duration // DiscoveryInterval is the frequency of background tasks of ydb endpoints // discovery. // If DiscoveryInterval is zero then the DefaultDiscoveryInterval is used. // If DiscoveryInterval is negative, then no background discovery prepared. DiscoveryInterval() time.Duration // Balancer is an optional configuration related to selected balancer. // That is, some balancing methods allow to be configured. Balancer() ibalancer.Balancer // RequestsType set an additional types hint to all requests. // It is needed only for debug purposes and advanced cases. RequestsType() string // DialTimeout is the maximum amount of time a dial will wait for a connect to // complete. // If DialTimeout is zero then no timeout is used. DialTimeout() time.Duration // TLSConfig specifies the TLS configuration to use for tls client. // If TLSConfig is zero then connections are insecure. TLSConfig() *tls.Config // GrpcDialOptions is an custom client grpc dial options which will appends to // default grpc dial options GrpcDialOptions() []grpc.DialOption // ConnectionTTL is a time to live of a connection // If ConnectionTTL is zero then TTL is not used. ConnectionTTL() time.Duration // Meta is an option which contains meta information about database connection Meta() meta.Meta }
Config contains driver configuration options.
type Option ¶
type Option func(c *config)
func WithBalancer ¶ added in v3.6.0
func WithCertificate ¶
func WithCertificate(certificate *x509.Certificate) Option
func WithConnectionTTL ¶ added in v3.7.0
func WithCredentials ¶
func WithCredentials(credentials credentials.Credentials) Option
func WithDatabase ¶
func WithDialTimeout ¶
func WithDiscoveryInterval ¶
func WithEndpoint ¶
func WithGrpcOptions ¶ added in v3.5.0
func WithGrpcOptions(option ...grpc.DialOption) Option
func WithOperationTimeout ¶
func WithRequestTimeout ¶
func WithRequestsType ¶
func WithSecure ¶
func WithStreamTimeout ¶
func WithUserAgent ¶ added in v3.7.0
Click to show internal directories.
Click to hide internal directories.