postgresql

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2017 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PSQLBin      pgBinary = "psql"
	PgDumpBin    pgBinary = "pg_dump"
	PgRestoreBin pgBinary = "pg_restore"
)

Variables

View Source
var (
	ValidReplSlotName = regexp.MustCompile("^[a-z0-9_]+$")
)

Functions

func AlterRole added in v0.3.0

func AlterRole(ctx context.Context, connString string, roles []string, username, password string) error

func Backup added in v0.3.0

func Backup(conn ConnSettings, s3Cred store.S3Credentials, dbName, folder string) (string, error)

func CheckDBStatus

func CheckDBStatus(ctx context.Context, connString string) error

func Create added in v0.3.0

func Create(conn ConnSettings, name string) error

func CreateReplicationSlot

func CreateReplicationSlot(ctx context.Context, connString string, name string) error

func CreateRole added in v0.3.0

func CreateRole(ctx context.Context, connString string, roles []string, username, password string) error

func Delete added in v0.3.0

func Delete(conn ConnSettings, name string) error

func DropReplicationSlot

func DropReplicationSlot(ctx context.Context, connString string, name string) error

func Exec

func Exec(ctx context.Context, db *sql.DB, query string, args ...interface{}) (sql.Result, error)

func GetPGMasterLocation

func GetPGMasterLocation(ctx context.Context, connString string) (uint64, error)

func GetPGState

func GetPGState(ctx context.Context, replConnParams ConnParams) (*cluster.PostgresState, error)

func GetReplicationLag added in v0.3.0

func GetReplicationLag(ctx context.Context, connParams ConnParams) (uint, error)

func GetReplicationSlots added in v0.3.0

func GetReplicationSlots(ctx context.Context, connString string) ([]string, error)

func GetRole

func GetRole(ctx context.Context, connParams ConnParams) (common.Role, error)

func GetTimelinesHistory

func GetTimelinesHistory(ctx context.Context, timeline uint64, replConnParams ConnParams) (cluster.PostgresTimeLinesHistory, error)

func IsValidReplSlotName

func IsValidReplSlotName(name string) bool

func PGLSNToInt

func PGLSNToInt(lsn string) (uint64, error)

func Query

func Query(ctx context.Context, db *sql.DB, query string, args ...interface{}) (*sql.Rows, error)

func ReplicationLagFunction added in v0.3.0

func ReplicationLagFunction(ctx context.Context, connString string) error

func Restore added in v0.3.0

func Restore(conn ConnSettings, s3Cred store.S3Credentials, dbName, src string) error

func Run added in v0.3.0

func Run(conn ConnSettings, filename string) error

func SetPassword added in v0.3.0

func SetPassword(ctx context.Context, connString, username, password string) error

Types

type ConnParams added in v0.3.0

type ConnParams map[string]string

func ParseConnString

func ParseConnString(name string) (ConnParams, error)

ParseConnString parses the options from name and adds them to the values.

The parsing code is based on conninfo_parse from libpq's fe-connect.c

func URLToConnParams

func URLToConnParams(urlStr string) (ConnParams, error)

URLToConnParams creates the connParams from the url.

func (ConnParams) ConnString added in v0.3.0

func (p ConnParams) ConnString() string

func (ConnParams) Equals added in v0.3.0

func (p ConnParams) Equals(cp ConnParams) bool

func (ConnParams) Get added in v0.3.0

func (p ConnParams) Get(k string) (v string)

func (ConnParams) Isset added in v0.3.0

func (p ConnParams) Isset(k string) bool

func (ConnParams) Set added in v0.3.0

func (p ConnParams) Set(k, v string)

type ConnSettings added in v0.3.0

type ConnSettings struct {
	Host     string
	Port     string
	Username string
}

type Manager

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

func NewManager

func NewManager(name string, pgBinPath string, dataDir string, confDir string, parameters Parameters, localConnString, replConnString, suUsername, suPassword, replUsername, replPassword string, requestTimeout time.Duration) *Manager

func (*Manager) CreateReplicationLagFunction added in v0.3.0

func (p *Manager) CreateReplicationLagFunction() error

func (*Manager) CreateReplicationSlot

func (p *Manager) CreateReplicationSlot(name string) error

func (*Manager) DropReplicationSlot

func (p *Manager) DropReplicationSlot(name string) error

func (*Manager) GetParameters

func (p *Manager) GetParameters() Parameters

func (*Manager) GetPrimaryConninfo

func (p *Manager) GetPrimaryConninfo() (ConnParams, error)

func (*Manager) GetReplicationSlots added in v0.3.0

func (p *Manager) GetReplicationSlots() ([]string, error)

func (*Manager) GetRole

func (p *Manager) GetRole() (common.Role, error)

func (*Manager) HasConnString

func (p *Manager) HasConnString() (bool, error)

func (*Manager) Init

func (p *Manager) Init() error

func (*Manager) IsInitialized

func (p *Manager) IsInitialized() (bool, error)

func (*Manager) IsStarted

func (p *Manager) IsStarted() (bool, error)

func (*Manager) Promote

func (p *Manager) Promote() error

func (*Manager) Reload

func (p *Manager) Reload() error

func (*Manager) RemoveAll

func (p *Manager) RemoveAll() error

func (*Manager) Restart

func (p *Manager) Restart(fast bool) error

func (*Manager) SetParameters

func (p *Manager) SetParameters(parameters Parameters)

func (*Manager) SetupRoles added in v0.3.0

func (p *Manager) SetupRoles() error

func (*Manager) Start

func (p *Manager) Start() error

func (*Manager) Stop

func (p *Manager) Stop(fast bool) error

func (*Manager) SyncFromFollowed added in v0.3.0

func (p *Manager) SyncFromFollowed(followedConnParams ConnParams) error

func (*Manager) SyncFromFollowedPGRewind added in v0.3.0

func (p *Manager) SyncFromFollowedPGRewind(followedConnParams ConnParams, password string) error

func (*Manager) WriteConf

func (p *Manager) WriteConf() error

func (*Manager) WriteRecoveryConf

func (p *Manager) WriteRecoveryConf(followedConnParams ConnParams) error

type Parameters

type Parameters map[string]string

func (Parameters) Copy

func (s Parameters) Copy() Parameters

func (Parameters) Equals

func (s Parameters) Equals(is Parameters) bool

func (Parameters) Get

func (s Parameters) Get(k string) (string, bool)

func (Parameters) Set

func (s Parameters) Set(k, v string)

Jump to

Keyboard shortcuts

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