internal

package
v0.0.0-...-1ec4297 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2022 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Version release version
	Version = "0.0.1"

	// Commit will be overwritten automatically by the build system
	Commit = "HEAD"
)

Functions

func Copy

func Copy(src, dst string, exclude []string) error

Copy copies source contents to destination

func DirSize

func DirSize(path string) (int64, error)

DirSize returns the space occupied by the given `path` on disk on the current file system.

func Exists

func Exists(path string) bool

Exists returns `true` if the given `path` on the current file system exists

func FullVersion

func FullVersion() string

FullVersion returns the full version and commit hash

func GetDatafiles

func GetDatafiles(path string) ([]string, error)

GetDatafiles returns a list of all data files stored in the database path given by `path`. All datafiles are identified by the the glob `*.data` and the basename is represented by a monotonic increasing integer. The returned files are *sorted* in increasing order.

func LoadFromJsonFile

func LoadFromJsonFile(path string, v interface{}) error

LoadFromJsonFile reads file located at `path` and put its content in json format in v

func ParseIds

func ParseIds(fns []string) ([]int, error)

ParseIds will parse a list of datafiles as returned by `GetDatafiles` and extract the id part and return a slice of ints.

func SaveJsonToFile

func SaveJsonToFile(v interface{}, path string, mode os.FileMode) error

SaveJsonToFile converts v into json and store in file identified by path

Types

type Entry

type Entry struct {
	Checksum uint32
	Key      []byte
	Offset   int64
	Value    []byte
	Expiry   *time.Time
}

Entry represents a key/value in the database

func NewEntry

func NewEntry(key, value []byte, expiry *time.Time) Entry

NewEntry creates a new `Entry` with the given `key` and `value`

type Item

type Item struct {
	FileID int   `json:"fileid"`
	Offset int64 `json:"offset"`
	Size   int64 `json:"size"`
}

Item represents the location of the value on disk. This is used by the internal Adaptive Radix Tree to hold an in-memory structure mapping keys to locations on disk of where the value(s) can be read from.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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