mysql

package
v0.6.0-test.0 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2023 License: AGPL-3.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const DateTimeFormat = "2006-01-02 15:04:05.999999"

Variables

View Source
var EmptyResultData = ResultData{}

Functions

func QueryRowsMap

func QueryRowsMap(db *sql.DB, query string, onRow func(RowMap) error, args ...interface{}) (err error)

QueryRowsMap is a convenience function allowing querying a result set while poviding a callback function activated per read row.

func ScanRowsToArrays

func ScanRowsToArrays(rows *sql.Rows, onRow func([]CellData) error) error

ScanRowsToArrays is a convenience function, typically not called directly, which maps rows already read from the databse into arrays of NullString

func ScanRowsToMaps

func ScanRowsToMaps(rows *sql.Rows, onRow func(RowMap) error) error

ScanRowsToMaps is a convenience function, typically not called directly, which maps rows already read from the databse into RowMap entries.

Types

type CellData

type CellData sql.NullString

CellData is the result of a single (atomic) column in a single row

func RowToArray

func RowToArray(rows *sql.Rows, columns []string) []CellData

func (*CellData) MarshalJSON

func (cd *CellData) MarshalJSON() ([]byte, error)

func (*CellData) NullString

func (cd *CellData) NullString() *sql.NullString

func (*CellData) UnmarshalJSON

func (cd *CellData) UnmarshalJSON(b []byte) error

UnmarshalJSON reds this object from JSON

type Config

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

func GetConfig

func GetConfig() *Config

func NewConfig

func NewConfig(properties map[string]string) (*Config, error)

func (*Config) GetDBConnWithAddr

func (config *Config) GetDBConnWithAddr(addr string) (*sql.DB, error)

func (*Config) GetDBPort

func (config *Config) GetDBPort() int

func (*Config) GetLocalDBConn

func (config *Config) GetLocalDBConn() (*sql.DB, error)

type Manager

type Manager struct {
	component.DBManagerBase
	DB *sql.DB
	// contains filtered or unexported fields
}
var Mgr *Manager

func NewManager

func NewManager(logger logger.Logger) (*Manager, error)

func (*Manager) AddCurrentMemberToCluster

func (mgr *Manager) AddCurrentMemberToCluster(cluster *dcs.Cluster) error

func (*Manager) DeleteMemberFromCluster

func (mgr *Manager) DeleteMemberFromCluster(cluster *dcs.Cluster, host string) error

func (*Manager) Demote

func (mgr *Manager) Demote() error

func (*Manager) EnsureServerID

func (mgr *Manager) EnsureServerID(ctx context.Context) (bool, error)

func (*Manager) Follow

func (mgr *Manager) Follow(cluster *dcs.Cluster) error

func (*Manager) GetHealthiestMember

func (mgr *Manager) GetHealthiestMember(cluster *dcs.Cluster, candidate string) *dcs.Member

func (*Manager) GetLeaderClient

func (mgr *Manager) GetLeaderClient(ctx context.Context, cluster *dcs.Cluster) (*sql.DB, error)

func (*Manager) GetMemberAddrs

func (mgr *Manager) GetMemberAddrs(cluster *dcs.Cluster) []string

func (*Manager) HasOtherHealthyLeader

func (mgr *Manager) HasOtherHealthyLeader(cluster *dcs.Cluster) *dcs.Member

func (*Manager) HasOtherHealthyMembers

func (mgr *Manager) HasOtherHealthyMembers(cluster *dcs.Cluster, leader string) []*dcs.Member

HasOtherHealthyMembers checks if there are any healthy members, excluding the leader

func (*Manager) Initialize

func (mgr *Manager) Initialize()

func (*Manager) InitiateCluster

func (mgr *Manager) InitiateCluster(cluster *dcs.Cluster) error

func (*Manager) IsClusterHealthy

func (mgr *Manager) IsClusterHealthy(ctx context.Context, cluster *dcs.Cluster) bool

func (*Manager) IsClusterInitialized

func (mgr *Manager) IsClusterInitialized(ctx context.Context, cluster *dcs.Cluster) (bool, error)

IsClusterInitialized is a method to check if cluster is initailized or not

func (*Manager) IsCurrentMemberHealthy

func (mgr *Manager) IsCurrentMemberHealthy() bool

func (*Manager) IsCurrentMemberInCluster

func (mgr *Manager) IsCurrentMemberInCluster(cluster *dcs.Cluster) bool

func (*Manager) IsDBStartupReady

func (mgr *Manager) IsDBStartupReady() bool

func (*Manager) IsLeader

func (mgr *Manager) IsLeader(ctx context.Context, cluster *dcs.Cluster) (bool, error)

func (*Manager) IsLeaderMember

func (mgr *Manager) IsLeaderMember(ctx context.Context, cluster *dcs.Cluster, member *dcs.Member) (bool, error)

func (*Manager) IsMemberHealthy

func (mgr *Manager) IsMemberHealthy(cluster *dcs.Cluster, member *dcs.Member) bool

func (*Manager) IsReadonly

func (mgr *Manager) IsReadonly(ctx context.Context, cluster *dcs.Cluster, member *dcs.Member) (bool, error)

func (*Manager) IsRunning

func (mgr *Manager) IsRunning() bool

func (*Manager) Premote

func (mgr *Manager) Premote() error

func (*Manager) Recover

func (mgr *Manager) Recover()

type NamedResultData

type NamedResultData struct {
	Columns []string
	Data    ResultData
}

type ResultData

type ResultData []RowData

ResultData is an ordered row set of RowData

type RowData

type RowData []CellData

RowData is the result of a single row, in positioned array format

func (*RowData) Args

func (rd *RowData) Args() []interface{}

func (*RowData) MarshalJSON

func (rd *RowData) MarshalJSON() ([]byte, error)

MarshalJSON will marshal this map as JSON

type RowMap

type RowMap map[string]CellData

RowMap represents one row in a result set. Its objective is to allow for easy, typed getters by column name.

func (*RowMap) GetBool

func (rm *RowMap) GetBool(key string) bool

func (*RowMap) GetInt

func (rm *RowMap) GetInt(key string) int

func (*RowMap) GetInt64

func (rm *RowMap) GetInt64(key string) int64

func (*RowMap) GetIntD

func (rm *RowMap) GetIntD(key string, def int) int

func (*RowMap) GetNullInt64

func (rm *RowMap) GetNullInt64(key string) sql.NullInt64

func (*RowMap) GetString

func (rm *RowMap) GetString(key string) string

func (*RowMap) GetStringD

func (rm *RowMap) GetStringD(key string, def string) string

GetStringD returns a string from the map, or a default value if the key does not exist

func (*RowMap) GetTime

func (rm *RowMap) GetTime(key string) time.Time

func (*RowMap) GetUint

func (rm *RowMap) GetUint(key string) uint

func (*RowMap) GetUint64

func (rm *RowMap) GetUint64(key string) uint64

func (*RowMap) GetUint64D

func (rm *RowMap) GetUint64D(key string, def uint64) uint64

func (*RowMap) GetUintD

func (rm *RowMap) GetUintD(key string, def uint) uint

Jump to

Keyboard shortcuts

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