s3

package
v0.3.13 Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2023 License: Apache-2.0 Imports: 20 Imported by: 3

Documentation

Index

Constants

View Source
const DefaultRegion = "us-east-1"

DefaultRegion is the region used if one is not specified.

View Source
const MaxKeys = 1000

MaxKeys is the number of keys S3 can operate on per batch.

View Source
const ReplicaClientType = "s3"

ReplicaClientType is the client type for this package.

Variables

This section is empty.

Functions

func ParseHost added in v0.3.3

func ParseHost(s string) (bucket, region, endpoint string, forcePathStyle bool)

ParseHost extracts data from a hostname depending on the service provider.

Types

type ReplicaClient added in v0.3.5

type ReplicaClient struct {

	// AWS authentication keys.
	AccessKeyID     string
	SecretAccessKey string

	// S3 bucket information
	Region         string
	Bucket         string
	Path           string
	Endpoint       string
	ForcePathStyle bool
	SkipVerify     bool
	// contains filtered or unexported fields
}

ReplicaClient is a client for writing snapshots & WAL segments to disk.

func NewReplicaClient added in v0.3.5

func NewReplicaClient() *ReplicaClient

NewReplicaClient returns a new instance of ReplicaClient.

func (*ReplicaClient) DeleteAll added in v0.3.5

func (c *ReplicaClient) DeleteAll(ctx context.Context) error

DeleteAll deletes everything on the remote path. Mainly used for testing.

func (*ReplicaClient) DeleteGeneration added in v0.3.5

func (c *ReplicaClient) DeleteGeneration(ctx context.Context, generation string) error

DeleteGeneration deletes all snapshots & WAL segments within a generation.

func (*ReplicaClient) DeleteSnapshot added in v0.3.5

func (c *ReplicaClient) DeleteSnapshot(ctx context.Context, generation string, index int) error

DeleteSnapshot deletes a snapshot with the given generation & index.

func (*ReplicaClient) DeleteWALSegments added in v0.3.5

func (c *ReplicaClient) DeleteWALSegments(ctx context.Context, a []litestream.Pos) error

DeleteWALSegments deletes WAL segments with at the given positions.

func (*ReplicaClient) Generations added in v0.3.5

func (c *ReplicaClient) Generations(ctx context.Context) ([]string, error)

Generations returns a list of available generation names.

func (*ReplicaClient) Init added in v0.3.5

func (c *ReplicaClient) Init(ctx context.Context) (err error)

Init initializes the connection to S3. No-op if already initialized.

func (*ReplicaClient) SnapshotReader added in v0.3.5

func (c *ReplicaClient) SnapshotReader(ctx context.Context, generation string, index int) (io.ReadCloser, error)

SnapshotReader returns a reader for snapshot data at the given generation/index.

func (*ReplicaClient) Snapshots added in v0.3.5

func (c *ReplicaClient) Snapshots(ctx context.Context, generation string) (litestream.SnapshotIterator, error)

Snapshots returns an iterator over all available snapshots for a generation.

func (*ReplicaClient) Type added in v0.3.5

func (c *ReplicaClient) Type() string

Type returns "s3" as the client type.

func (*ReplicaClient) WALSegmentReader added in v0.3.5

func (c *ReplicaClient) WALSegmentReader(ctx context.Context, pos litestream.Pos) (io.ReadCloser, error)

WALSegmentReader returns a reader for a section of WAL data at the given index. Returns os.ErrNotExist if no matching index/offset is found.

func (*ReplicaClient) WALSegments added in v0.3.5

func (c *ReplicaClient) WALSegments(ctx context.Context, generation string) (litestream.WALSegmentIterator, error)

WALSegments returns an iterator over all available WAL files for a generation.

func (*ReplicaClient) WriteSnapshot added in v0.3.5

func (c *ReplicaClient) WriteSnapshot(ctx context.Context, generation string, index int, rd io.Reader) (info litestream.SnapshotInfo, err error)

WriteSnapshot writes LZ4 compressed data from rd into a file on disk.

func (*ReplicaClient) WriteWALSegment added in v0.3.5

func (c *ReplicaClient) WriteWALSegment(ctx context.Context, pos litestream.Pos, rd io.Reader) (info litestream.WALSegmentInfo, err error)

WriteWALSegment writes LZ4 compressed data from rd into a file on disk.

Jump to

Keyboard shortcuts

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