Documentation ¶
Index ¶
- Constants
- type ReplicaClient
- func (c *ReplicaClient) Cleanup(ctx context.Context) (err error)
- func (c *ReplicaClient) DeleteGeneration(ctx context.Context, generation string) (err error)
- func (c *ReplicaClient) DeleteSnapshot(ctx context.Context, generation string, index int) (err error)
- func (c *ReplicaClient) DeleteWALSegments(ctx context.Context, a []litestream.Pos) (err error)
- func (c *ReplicaClient) Generations(ctx context.Context) (_ []string, err error)
- func (c *ReplicaClient) Init(ctx context.Context) (_ *sftp.Client, err error)
- func (c *ReplicaClient) SnapshotReader(ctx context.Context, generation string, index int) (_ io.ReadCloser, err error)
- func (c *ReplicaClient) Snapshots(ctx context.Context, generation string) (_ litestream.SnapshotIterator, err error)
- func (c *ReplicaClient) Type() string
- func (c *ReplicaClient) WALSegmentReader(ctx context.Context, pos litestream.Pos) (_ io.ReadCloser, err error)
- func (c *ReplicaClient) WALSegments(ctx context.Context, generation string) (_ litestream.WALSegmentIterator, err error)
- func (c *ReplicaClient) WriteSnapshot(ctx context.Context, generation string, index int, rd io.Reader) (info litestream.SnapshotInfo, err error)
- func (c *ReplicaClient) WriteWALSegment(ctx context.Context, pos litestream.Pos, rd io.Reader) (info litestream.WALSegmentInfo, err error)
Constants ¶
const (
DefaultDialTimeout = 30 * time.Second
)
Default settings for replica client.
const ReplicaClientType = "sftp"
ReplicaClientType is the client type for this package.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ReplicaClient ¶
type ReplicaClient struct { // SFTP connection info Host string User string Password string Path string KeyPath string DialTimeout time.Duration // contains filtered or unexported fields }
ReplicaClient is a client for writing snapshots & WAL segments to disk.
func NewReplicaClient ¶
func NewReplicaClient() *ReplicaClient
NewReplicaClient returns a new instance of ReplicaClient.
func (*ReplicaClient) Cleanup ¶
func (c *ReplicaClient) Cleanup(ctx context.Context) (err error)
Cleanup deletes path & generations directories after empty.
func (*ReplicaClient) DeleteGeneration ¶
func (c *ReplicaClient) DeleteGeneration(ctx context.Context, generation string) (err error)
DeleteGeneration deletes all snapshots & WAL segments within a generation.
func (*ReplicaClient) DeleteSnapshot ¶
func (c *ReplicaClient) DeleteSnapshot(ctx context.Context, generation string, index int) (err error)
DeleteSnapshot deletes a snapshot with the given generation & index.
func (*ReplicaClient) DeleteWALSegments ¶
func (c *ReplicaClient) DeleteWALSegments(ctx context.Context, a []litestream.Pos) (err error)
DeleteWALSegments deletes WAL segments with at the given positions.
func (*ReplicaClient) Generations ¶
func (c *ReplicaClient) Generations(ctx context.Context) (_ []string, err error)
Generations returns a list of available generation names.
func (*ReplicaClient) SnapshotReader ¶
func (c *ReplicaClient) SnapshotReader(ctx context.Context, generation string, index int) (_ io.ReadCloser, err error)
SnapshotReader returns a reader for snapshot data at the given generation/index.
func (*ReplicaClient) Snapshots ¶
func (c *ReplicaClient) Snapshots(ctx context.Context, generation string) (_ litestream.SnapshotIterator, err error)
Snapshots returns an iterator over all available snapshots for a generation.
func (*ReplicaClient) Type ¶
func (c *ReplicaClient) Type() string
Type returns "gcs" as the client type.
func (*ReplicaClient) WALSegmentReader ¶
func (c *ReplicaClient) WALSegmentReader(ctx context.Context, pos litestream.Pos) (_ io.ReadCloser, err 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 ¶
func (c *ReplicaClient) WALSegments(ctx context.Context, generation string) (_ litestream.WALSegmentIterator, err error)
WALSegments returns an iterator over all available WAL files for a generation.
func (*ReplicaClient) WriteSnapshot ¶
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 to the object storage.
func (*ReplicaClient) WriteWALSegment ¶
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.