satellites

package
v1.45.1-rc Latest Latest
Warning

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

Go to latest
Published: Dec 10, 2021 License: AGPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Unexpected status should not be used for sanity checking.
	Unexpected Status = 0
	// Normal status reflects a lack of graceful exit.
	Normal = 1
	// Exiting reflects an active graceful exit.
	Exiting = 2
	// ExitSucceeded reflects a graceful exit that succeeded.
	ExitSucceeded = 3
	// ExitFailed reflects a graceful exit that failed.
	ExitFailed = 4
)

Variables

This section is empty.

Functions

This section is empty.

Types

type DB

type DB interface {
	// SetAddress inserts into satellite's db id, address.
	SetAddress(ctx context.Context, satelliteID storj.NodeID, address string) error
	// GetSatellite retrieves that satellite by ID
	GetSatellite(ctx context.Context, satelliteID storj.NodeID) (satellite Satellite, err error)
	// GetSatellitesUrls retrieves all satellite's id and urls.
	GetSatellitesUrls(ctx context.Context) (satelliteURLs []storj.NodeURL, err error)
	// InitiateGracefulExit updates the database to reflect the beginning of a graceful exit
	InitiateGracefulExit(ctx context.Context, satelliteID storj.NodeID, intitiatedAt time.Time, startingDiskUsage int64) error
	// CancelGracefulExit removes that satellite by ID
	CancelGracefulExit(ctx context.Context, satelliteID storj.NodeID) error
	// UpdateGracefulExit increments the total bytes deleted during a graceful exit
	UpdateGracefulExit(ctx context.Context, satelliteID storj.NodeID, bytesDeleted int64) error
	// CompleteGracefulExit updates the database when a graceful exit is completed or failed
	CompleteGracefulExit(ctx context.Context, satelliteID storj.NodeID, finishedAt time.Time, exitStatus Status, completionReceipt []byte) error
	// ListGracefulExits lists all graceful exit records
	ListGracefulExits(ctx context.Context) ([]ExitProgress, error)
}

DB works with satellite database.

architecture: Database

type ExitProgress

type ExitProgress struct {
	SatelliteID       storj.NodeID
	InitiatedAt       *time.Time
	FinishedAt        *time.Time
	StartingDiskUsage int64
	BytesDeleted      int64
	CompletionReceipt []byte
	Status            int32
}

ExitProgress contains the status of a graceful exit.

type Satellite added in v0.25.0

type Satellite struct {
	SatelliteID storj.NodeID
	AddedAt     time.Time
	Status      int32
}

Satellite contains the satellite and status.

type Status

type Status = int

Status refers to the state of the relationship with a satellites.

Jump to

Keyboard shortcuts

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