transaction

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Jan 8, 2024 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func TestMultipleQueriesWithTx

func TestMultipleQueriesWithTx(t *testing.T)

func TestMultipleQueriesWithWrapTx

func TestMultipleQueriesWithWrapTx(t *testing.T)

Types

type Builder

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

func NewBuilder

func NewBuilder(pool *pgxpool.Pool) Builder

func (Builder) Build

func (t Builder) Build(ctx context.Context) (tx pgx.Tx, err error)

type Executor

type Executor struct {
	*query.Executor
	// contains filtered or unexported fields
}

func NewTransactionExecutor

func NewTransactionExecutor(tx pgx.Tx, queryRunner *query.Executor) *Executor

func (*Executor) Commit

func (executor *Executor) Commit(ctx context.Context) error

func (*Executor) Rollback

func (executor *Executor) Rollback(ctx context.Context) error

type Strategy

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

func NewStrategy

func NewStrategy(tx pgx.Tx) *Strategy

func (*Strategy) Handle

func (strategy *Strategy) Handle(
	ctx context.Context,
	handler func(ctx context.Context, tx *Executor) error,
) (err error)

Jump to

Keyboard shortcuts

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