boltdb

package
v0.0.0-...-431ae09 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2023 License: BSD-3-Clause Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Store

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

Store implements storage.Store, and storage with boltdb

func NewStore

func NewStore(dataExpire int64, retryInterval int64) *Store

NewStore will return the boltdb implement TODO: change to options

func (*Store) ChangeGlobalStatus

func (s *Store) ChangeGlobalStatus(global *storage.TransGlobalStore, newStatus string, updates []string, finished bool)

ChangeGlobalStatus changes global trans status

func (*Store) CreateKV

func (s *Store) CreateKV(cat, key, value string) error

CreateKV creates key-value pair

func (*Store) DeleteKV

func (s *Store) DeleteKV(cat, key string) error

DeleteKV deletes key-value pair

func (*Store) FindBranches

func (s *Store) FindBranches(gid string) []storage.TransBranchStore

FindBranches finds Branch data by gid

func (*Store) FindKV

func (s *Store) FindKV(cat, key string) []storage.KVStore

FindKV finds key-value pairs

func (*Store) FindTransGlobalStore

func (s *Store) FindTransGlobalStore(gid string) (trans *storage.TransGlobalStore)

FindTransGlobalStore finds GlobalTrans data by gid

func (*Store) LockGlobalSaveBranches

func (s *Store) LockGlobalSaveBranches(gid string, status string, branches []storage.TransBranchStore, branchStart int)

LockGlobalSaveBranches creates branches

func (*Store) LockOneGlobalTrans

func (s *Store) LockOneGlobalTrans(expireIn time.Duration) *storage.TransGlobalStore

LockOneGlobalTrans finds GlobalTrans

func (*Store) MaySaveNewTrans

func (s *Store) MaySaveNewTrans(global *storage.TransGlobalStore, branches []storage.TransBranchStore) error

MaySaveNewTrans creates a new trans

func (*Store) Ping

func (s *Store) Ping() error

Ping execs ping cmd to boltdb

func (*Store) PopulateData

func (s *Store) PopulateData(skipDrop bool)

PopulateData populates data to boltdb

func (*Store) ResetCronTime

func (s *Store) ResetCronTime(after time.Duration, limit int64) (succeedCount int64, hasRemaining bool, err error)

ResetCronTime reset nextCronTime unfinished transactions need to be retried as soon as possible after business downtime is recovered

func (*Store) ScanKV

func (s *Store) ScanKV(cat string, position *string, limit int64) []storage.KVStore

ScanKV lists KV pairs

func (*Store) ScanTransGlobalStores

func (s *Store) ScanTransGlobalStores(position *string, limit int64) []storage.TransGlobalStore

ScanTransGlobalStores lists GlobalTrans data

func (*Store) TouchCronTime

func (s *Store) TouchCronTime(global *storage.TransGlobalStore, nextCronInterval int64, nextCronTime *time.Time)

TouchCronTime updates cronTime

func (*Store) UpdateBranches

func (s *Store) UpdateBranches(branches []storage.TransBranchStore, updates []string) (int, error)

UpdateBranches update branches info

func (*Store) UpdateKV

func (s *Store) UpdateKV(kv *storage.KVStore) error

UpdateKV updates key-value pair

Jump to

Keyboard shortcuts

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