backup

package
v1.21.0 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2023 License: BSD-3-Clause Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackupDescriptor

type BackupDescriptor struct {
	StartedAt     time.Time         `json:"startedAt"`
	CompletedAt   time.Time         `json:"completedAt"`
	ID            string            `json:"id"` // User created backup id
	Classes       []ClassDescriptor `json:"classes"`
	Status        string            `json:"status"`  // "STARTED|TRANSFERRING|TRANSFERRED|SUCCESS|FAILED"
	Version       string            `json:"version"` //
	ServerVersion string            `json:"serverVersion"`
	Error         string            `json:"error"`
}

BackupDescriptor contains everything needed to completely restore a list of classes

func (*BackupDescriptor) AllExist

func (d *BackupDescriptor) AllExist(classes []string) string

AllExist checks if all classes exist in d. It returns either "" or the first class which it could not find

func (*BackupDescriptor) Exclude

func (d *BackupDescriptor) Exclude(classes []string)

Exclude removes classes from d

func (*BackupDescriptor) Filter

func (d *BackupDescriptor) Filter(pred func(s string) bool)

Filter classes based on predicate

func (*BackupDescriptor) Include

func (d *BackupDescriptor) Include(classes []string)

Include only these classes and remove everything else

func (*BackupDescriptor) List

func (d *BackupDescriptor) List() []string

List all existing classes in d

func (*BackupDescriptor) ToDistributed

func (d *BackupDescriptor) ToDistributed() *DistributedBackupDescriptor

ToDistributed is used just for backward compatibility with the old version.

func (*BackupDescriptor) Validate

func (d *BackupDescriptor) Validate(newSchema bool) error

type ClassDescriptor

type ClassDescriptor struct {
	Name          string             `json:"name"` // DB class name, also selected by user
	Shards        []*ShardDescriptor `json:"shards"`
	ShardingState []byte             `json:"shardingState"`
	Schema        []byte             `json:"schema"`
	Chunks        map[int32][]string `json:"chunks,omitempty"`
	Error         error              `json:"-"`
}

ClassDescriptor contains everything needed to completely restore a class

type CreateMeta

type CreateMeta struct {
	Path   string
	Status Status
}

type DistributedBackupDescriptor

type DistributedBackupDescriptor struct {
	StartedAt     time.Time                  `json:"startedAt"`
	CompletedAt   time.Time                  `json:"completedAt"`
	ID            string                     `json:"id"` // User created backup id
	Nodes         map[string]*NodeDescriptor `json:"nodes"`
	Status        Status                     `json:"status"`  //
	Version       string                     `json:"version"` //
	ServerVersion string                     `json:"serverVersion"`
	Error         string                     `json:"error"`
}

DistributedBAckupDescriptor contains everything need to completely restore a distributed backup

func (*DistributedBackupDescriptor) AllExist

func (d *DistributedBackupDescriptor) AllExist(classes []string) string

AllExist checks if all classes exist in d. It returns either "" or the first class which it could not find

func (*DistributedBackupDescriptor) Classes

func (d *DistributedBackupDescriptor) Classes() []string

Classes returns all classes contained in d

func (*DistributedBackupDescriptor) Count

func (d *DistributedBackupDescriptor) Count() int

Count number of classes

func (*DistributedBackupDescriptor) Exclude

func (d *DistributedBackupDescriptor) Exclude(classes []string)

Exclude removes classes from d

func (*DistributedBackupDescriptor) Filter

func (d *DistributedBackupDescriptor) Filter(pred func(s string) bool)

Filter classes based on predicate

func (*DistributedBackupDescriptor) Include

func (d *DistributedBackupDescriptor) Include(classes []string)

Include only these classes and remove everything else

func (*DistributedBackupDescriptor) Len

Len returns how many nodes exist in d

func (*DistributedBackupDescriptor) RemoveEmpty

RemoveEmpty removes any nodes with an empty class list

func (*DistributedBackupDescriptor) ResetStatus

resetStatus sets status and sub-statuses to Started It also empties error and sub-errors

func (*DistributedBackupDescriptor) Validate

func (d *DistributedBackupDescriptor) Validate() error

type ErrContextExpired

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

func NewErrContextExpired

func NewErrContextExpired(err error) ErrContextExpired

func (ErrContextExpired) Error

func (e ErrContextExpired) Error() string

type ErrInternal

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

func NewErrInternal

func NewErrInternal(err error) ErrInternal

func (ErrInternal) Error

func (e ErrInternal) Error() string

type ErrNotFound

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

func NewErrNotFound

func NewErrNotFound(err error) ErrNotFound

func (ErrNotFound) Error

func (e ErrNotFound) Error() string

type ErrUnprocessable

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

func NewErrUnprocessable

func NewErrUnprocessable(err error) ErrUnprocessable

func (ErrUnprocessable) Error

func (e ErrUnprocessable) Error() string

type NodeDescriptor

type NodeDescriptor struct {
	Classes []string `json:"classes"`
	Status  Status   `json:"status"`
	Error   string   `json:"error"`
}

NodeDescriptor contains data related to one participant in DBRO

type RestoreMeta

type RestoreMeta struct {
	Path   string
	Status Status
}

type ShardDescriptor

type ShardDescriptor struct {
	Name  string   `json:"name"`
	Node  string   `json:"node"`
	Files []string `json:"files,omitempty"`

	DocIDCounterPath      string `json:"docIdCounterPath,omitempty"`
	DocIDCounter          []byte `json:"docIdCounter,omitempty"`
	PropLengthTrackerPath string `json:"propLengthTrackerPath,omitempty"`
	PropLengthTracker     []byte `json:"propLengthTracker,omitempty"`
	ShardVersionPath      string `json:"shardVersionPath,omitempty"`
	Version               []byte `json:"version,omitempty"`
	Chunk                 int32  `json:"chunk"`
}

ShardDescriptor contains everything needed to completely restore a partition of a specific class

func (*ShardDescriptor) ClearTemporary added in v1.21.0

func (s *ShardDescriptor) ClearTemporary()

ClearTemporary clears fields that are no longer needed once compression is done. These fields are not required in versions > 1 because they are stored in the tarball.

type Status

type Status string
const (
	Started      Status = "STARTED"
	Transferring Status = "TRANSFERRING"
	Transferred  Status = "TRANSFERRED"
	Success      Status = "SUCCESS"
	Failed       Status = "FAILED"
)

Jump to

Keyboard shortcuts

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