multi

package
v2.15.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrMissingWriter = errors.New("multi: missing writer driver")
	ErrClose         = errors.New("multi: close has errors")
)

Functions

This section is empty.

Types

type Driver

type Driver struct {
	// contains filtered or unexported fields
}

func New

func New(opts ...Option) (*Driver, error)

func (*Driver) BeginTx added in v2.14.2

func (d *Driver) BeginTx(ctx context.Context, opts *sql.TxOptions) (dialect.Tx, error)

func (*Driver) Close

func (d *Driver) Close() error

func (*Driver) Dialect

func (d *Driver) Dialect() string

func (*Driver) Exec

func (d *Driver) Exec(ctx context.Context, query string, args, v any) error

func (*Driver) Query

func (d *Driver) Query(ctx context.Context, query string, args, v any) error

func (*Driver) Tx

func (d *Driver) Tx(ctx context.Context) (dialect.Tx, error)

type Option

type Option func(*Driver)

func WithPolicy

func WithPolicy(p Policy) Option

func WithReaders

func WithReaders(r ...dialect.Driver) Option

func WithWriter

func WithWriter(w dialect.Driver) Option

type Policy

type Policy interface {
	Resolve([]dialect.Driver) dialect.Driver
}

func RandomPolicy

func RandomPolicy() Policy

func RoundRobinPolicy

func RoundRobinPolicy() Policy

func StrictRoundRobinPolicy added in v2.14.2

func StrictRoundRobinPolicy() Policy

type PolicyFunc

type PolicyFunc func([]dialect.Driver) dialect.Driver

func (PolicyFunc) Resolve

func (f PolicyFunc) Resolve(drivers []dialect.Driver) dialect.Driver

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL