file

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2025 License: Apache-2.0 Imports: 11 Imported by: 1

Documentation

Index

Constants

View Source
const ReplicaClientType = "file"

ReplicaClientType is the client type for this package.

Variables

This section is empty.

Functions

This section is empty.

Types

type ReplicaClient

type ReplicaClient struct {
	Replica *litestream.Replica
	// contains filtered or unexported fields
}

ReplicaClient is a client for writing LTX files to disk.

func NewReplicaClient

func NewReplicaClient(path string) *ReplicaClient

NewReplicaClient returns a new instance of ReplicaClient.

func (*ReplicaClient) DeleteAll added in v0.5.0

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

DeleteAll deletes all LTX files.

func (*ReplicaClient) DeleteLTXFiles added in v0.5.0

func (c *ReplicaClient) DeleteLTXFiles(ctx context.Context, a []*ltx.FileInfo) error

DeleteLTXFiles deletes LTX files.

func (*ReplicaClient) LTXFilePath added in v0.5.0

func (c *ReplicaClient) LTXFilePath(level int, minTXID, maxTXID ltx.TXID) string

LTXFilePath returns the path to an LTX file.

func (*ReplicaClient) LTXFiles added in v0.5.0

func (c *ReplicaClient) LTXFiles(ctx context.Context, level int, seek ltx.TXID, useMetadata bool) (ltx.FileIterator, error)

LTXFiles returns an iterator over all LTX files on the replica for the given level. The useMetadata parameter is ignored for file backend as ModTime is always available from readdir.

func (*ReplicaClient) LTXLevelDir added in v0.5.0

func (c *ReplicaClient) LTXLevelDir(level int) string

LTXLevelDir returns the path to a given level.

func (*ReplicaClient) OpenLTXFile added in v0.5.0

func (c *ReplicaClient) OpenLTXFile(ctx context.Context, level int, minTXID, maxTXID ltx.TXID, offset, size int64) (io.ReadCloser, error)

OpenLTXFile returns a reader for an LTX file at the given position. Returns os.ErrNotExist if no matching index/offset is found.

func (*ReplicaClient) Path

func (c *ReplicaClient) Path() string

Path returns the destination path to replicate the database to.

func (*ReplicaClient) Type

func (c *ReplicaClient) Type() string

Type returns "file" as the client type.

func (*ReplicaClient) WriteLTXFile added in v0.5.0

func (c *ReplicaClient) WriteLTXFile(ctx context.Context, level int, minTXID, maxTXID ltx.TXID, rd io.Reader) (info *ltx.FileInfo, err error)

WriteLTXFile writes an LTX file to the replica. Extracts timestamp from LTX header and sets it as the file's ModTime to preserve original creation time.

Jump to

Keyboard shortcuts

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