spanner

package
v0.0.0-...-9910d0f Latest Latest
Warning

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

Go to latest
Published: Feb 23, 2024 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ErrorCodeCreateClient = iota + 1
	ErrorCodeCloseClient
	ErrorCodeCreateDatabase
	ErrorCodeDropDatabase
	ErrorCodeTruncateAllTables
	ErrorCodeLoadSchema
	ErrorCodeUpdateDDL
	ErrorCodeUpdateDML
	ErrorCodeUpdatePartitionedDML
	ErrorCodeExecuteMigrations
	ErrorCodeGetMigrationVersion
	ErrorCodeSetMigrationVersion
	ErrorCodeNoMigration
	ErrorCodeMigrationVersionDirty
	ErrorCodeWaitOperation
	ErrorCodeCreateInstance
	ErrorCodeDeleteInstance
)

Variables

View Source
var (
	MigrationNameRegex = regexp.MustCompile(`[a-zA-Z0-9_\-]+`)
)

Functions

This section is empty.

Types

type AdminClient

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

func NewAdminClient

func NewAdminClient(ctx context.Context, config *Config) (*AdminClient, error)

func (*AdminClient) Close

func (c *AdminClient) Close() error

func (*AdminClient) CreateInstance

func (c *AdminClient) CreateInstance(ctx context.Context, node int32) error

func (*AdminClient) DeleteInstance

func (c *AdminClient) DeleteInstance(ctx context.Context, nmae string) error

type Client

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

func NewClient

func NewClient(ctx context.Context, config *Config, opts ...option.ClientOption) (*Client, error)

func (*Client) ApplyDDL

func (c *Client) ApplyDDL(ctx context.Context, statements []string) error

func (*Client) ApplyDDLFile

func (c *Client) ApplyDDLFile(ctx context.Context, filename string, ddl []byte) error

func (*Client) ApplyDML

func (c *Client) ApplyDML(ctx context.Context, statements []string, priority PriorityType) (int64, error)

func (*Client) ApplyDMLFile

func (c *Client) ApplyDMLFile(ctx context.Context, filename string, ddl []byte, partitioned bool, priority PriorityType) (int64, error)

func (*Client) ApplyPartitionedDML

func (c *Client) ApplyPartitionedDML(ctx context.Context, statements []string, priority PriorityType) (int64, error)

func (*Client) Close

func (c *Client) Close() error

func (*Client) CreateDatabase

func (c *Client) CreateDatabase(ctx context.Context, filename string, ddl []byte) error

func (*Client) DropDatabase

func (c *Client) DropDatabase(ctx context.Context) error

func (*Client) EnsureMigrationTable

func (c *Client) EnsureMigrationTable(ctx context.Context, tableName string) error

func (*Client) ExecuteMigrations

func (c *Client) ExecuteMigrations(ctx context.Context, migrations Migrations, limit int, tableName string) error

func (*Client) GetSchemaMigrationVersion

func (c *Client) GetSchemaMigrationVersion(ctx context.Context, tableName string) (uint, bool, error)

func (*Client) LoadDDL

func (c *Client) LoadDDL(ctx context.Context) ([]byte, error)

func (*Client) SetSchemaMigrationVersion

func (c *Client) SetSchemaMigrationVersion(ctx context.Context, version uint, dirty bool, tableName string) error

func (*Client) TruncateAllTables

func (c *Client) TruncateAllTables(ctx context.Context) error

type Config

type Config struct {
	Project         string
	Instance        string
	Database        string
	CredentialsFile string
}

func (*Config) URL

func (c *Config) URL() string

type Error

type Error struct {
	Code ErrorCode
	// contains filtered or unexported fields
}

func (*Error) Error

func (e *Error) Error() string

type ErrorCode

type ErrorCode int

type Migration

type Migration struct {
	// Version is the version of the migration
	Version uint

	// Name is the name of the migration
	Name string

	// Statements is the migration statements
	Statements []string
	// contains filtered or unexported fields
}

migration represents the parsed migration file. e.g. version_name.sql

type Migrations

type Migrations []*Migration

func LoadMigrations

func LoadMigrations(dir string) (Migrations, error)

func (Migrations) Len

func (ms Migrations) Len() int

func (Migrations) Less

func (ms Migrations) Less(i, j int) bool

func (Migrations) Swap

func (ms Migrations) Swap(i, j int)

type PriorityType

type PriorityType int
const (
	PriorityTypeUnspecified PriorityType = iota
	PriorityTypeHigh
	PriorityTypeMedium
	PriorityTypeLow
)

Jump to

Keyboard shortcuts

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