storage

package
v0.4.9 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2017 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AppendCloser added in v0.4.9

type AppendCloser interface {
	Append(data []byte) error
	CloseTransfer() (*polypb.BackupMeta, error)
}

type BackupManager added in v0.4.9

type BackupManager struct {
	EtcdCli etcd.ClientAPI
	// contains filtered or unexported fields
}

func NewBackupManager added in v0.4.9

func NewBackupManager(cfg *base.ServerConfig) *BackupManager

func (*BackupManager) GetFileStream added in v0.4.9

func (m *BackupManager) GetFileStream(key polypb.Key) (io.Reader, error)

GetFileStream returns a stream.

func (*BackupManager) GetKPastBackupKey added in v0.4.9

func (m *BackupManager) GetKPastBackupKey(db polypb.DatabaseID, k int) (polypb.Key, error)

GetKPastBackupKey returns a key.

func (*BackupManager) GetLatestToLSN added in v0.4.9

func (m *BackupManager) GetLatestToLSN(db polypb.DatabaseID) (string, error)

func (*BackupManager) PostFile added in v0.4.9

func (m *BackupManager) PostFile(key polypb.Key, name string, r io.Reader) error

PostFile creates a file.

func (*BackupManager) RemoveBackups added in v0.4.9

func (m *BackupManager) RemoveBackups(key polypb.Key) error

RemoveBackups removes backups.

func (*BackupManager) RestoreBackupInfo added in v0.4.9

func (m *BackupManager) RestoreBackupInfo(cli etcd.ClientAPI) error

func (*BackupManager) SearchBaseTimePointByLSN added in v0.4.9

func (m *BackupManager) SearchBaseTimePointByLSN(db polypb.DatabaseID, lsn string) (polypb.TimePoint, error)

SearchBaseTimePointByLSN finds base time point matching with a given lsn.

func (*BackupManager) SearchConsecutiveIncBackups added in v0.4.9

func (m *BackupManager) SearchConsecutiveIncBackups(
	db polypb.DatabaseID, from time.Time,
) ([]*storagepb.BackupFileInfo, error)

SearchConsecutiveIncBackups

func (*BackupManager) TransferTempBackup added in v0.4.9

func (m *BackupManager) TransferTempBackup(tempDir string, key polypb.Key) error

type DiskStorage added in v0.4.9

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

func (*DiskStorage) Create added in v0.4.9

func (s *DiskStorage) Create(name string) (io.WriteCloser, error)

func (*DiskStorage) CreateBackup added in v0.4.9

func (s *DiskStorage) CreateBackup(key polypb.Key, name string) (io.WriteCloser, error)

func (*DiskStorage) Delete added in v0.4.9

func (s *DiskStorage) Delete(name string) error

func (*DiskStorage) DeleteBackup added in v0.4.9

func (s *DiskStorage) DeleteBackup(key polypb.Key) error

func (*DiskStorage) FullBackupStream added in v0.4.9

func (s *DiskStorage) FullBackupStream(key polypb.Key) (io.Reader, error)

func (*DiskStorage) IncBackupStream added in v0.4.9

func (s *DiskStorage) IncBackupStream(key polypb.Key) (io.Reader, error)

func (*DiskStorage) LoadXtrabackupCP added in v0.4.9

func (s *DiskStorage) LoadXtrabackupCP(key polypb.Key) base.XtrabackupCheckpoints

func (*DiskStorage) Move added in v0.4.9

func (s *DiskStorage) Move(src string, dest polypb.Key) error

func (*DiskStorage) StorageType added in v0.4.9

func (s *DiskStorage) StorageType() polypb.StorageType

func (*DiskStorage) Walk added in v0.4.9

func (s *DiskStorage) Walk(f func(path string, info os.FileInfo, err error) error) error

type MemStorage added in v0.4.9

type MemStorage struct {
}

TODO: implement it

func (*MemStorage) Create added in v0.4.9

func (s *MemStorage) Create(name string) (io.WriteCloser, error)

func (*MemStorage) CreateBackup added in v0.4.9

func (s *MemStorage) CreateBackup(key polypb.Key, name string) (io.WriteCloser, error)

func (*MemStorage) Delete added in v0.4.9

func (s *MemStorage) Delete(name string) error

func (*MemStorage) DeleteBackup added in v0.4.9

func (s *MemStorage) DeleteBackup(key polypb.Key) error

func (*MemStorage) FullBackupStream added in v0.4.9

func (s *MemStorage) FullBackupStream(key polypb.Key) (io.Reader, error)

func (*MemStorage) IncBackupStream added in v0.4.9

func (s *MemStorage) IncBackupStream(key polypb.Key) (io.Reader, error)

func (*MemStorage) LoadXtrabackupCP added in v0.4.9

func (s *MemStorage) LoadXtrabackupCP(key polypb.Key) base.XtrabackupCheckpoints

func (*MemStorage) Move added in v0.4.9

func (s *MemStorage) Move(src string, dest polypb.Key) error

func (*MemStorage) StorageType added in v0.4.9

func (s *MemStorage) StorageType() polypb.StorageType

func (*MemStorage) Walk added in v0.4.9

func (s *MemStorage) Walk(f func(path string, info os.FileInfo, err error) error) error

type PhysicalStorage added in v0.4.9

type PhysicalStorage interface {
	StorageType() polypb.StorageType
	Create(name string) (io.WriteCloser, error)
	CreateBackup(key polypb.Key, name string) (io.WriteCloser, error)
	Move(src string, dest polypb.Key) error
	Delete(name string) error
	DeleteBackup(key polypb.Key) error
	FullBackupStream(key polypb.Key) (io.Reader, error)
	IncBackupStream(key polypb.Key) (io.Reader, error)
	LoadXtrabackupCP(key polypb.Key) base.XtrabackupCheckpoints
	Walk(f func(path string, info os.FileInfo, err error) error) error
}

type StorageService

type StorageService struct {
	EtcdCli etcd.ClientAPI
	// contains filtered or unexported fields
}

func NewStorageService

func NewStorageService(
	manager *BackupManager,
	rateLimit uint64,
	tempMngr *TempBackupManager,
	cfg *base.ServerConfig,
) *StorageService

func (*StorageService) GetFileByKey

func (*StorageService) GetKeysAtPoint

func (*StorageService) GetLatestToLSN

func (*StorageService) PostCheckpoints added in v0.4.7

func (*StorageService) PurgePrevBackup

func (*StorageService) TransferFullBackup added in v0.4.7

func (s *StorageService) TransferFullBackup(
	stream storagepb.StorageService_TransferFullBackupServer,
) error

func (*StorageService) TransferIncBackup added in v0.4.7

func (s *StorageService) TransferIncBackup(
	stream storagepb.StorageService_TransferIncBackupServer,
) error

type TempBackupManager added in v0.4.7

type TempBackupManager struct {

	// Injected after etcd launched
	EtcdCli etcd.ClientAPI
	// contains filtered or unexported fields
}

func NewTempBackupManager added in v0.4.7

func NewTempBackupManager(backupManager *BackupManager, cfg *TempBackupManagerConfig) (*TempBackupManager, error)

type TempBackupManagerConfig added in v0.4.7

type TempBackupManagerConfig struct {
	*base.Config

	TempDir string

	NodeID polypb.NodeID
}

Directories

Path Synopsis
Package storagepb is a generated protocol buffer package.
Package storagepb is a generated protocol buffer package.

Jump to

Keyboard shortcuts

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