package metadb
Import Path
github.com/polarsignals/wal/metadb (on go.dev)
Dependency Relation
imports 7 packages, and imported by one package
Involved Source Files
metadb.go
Package-Level Type Names (only one)
BoltMetaDB implements types.MetaStore using BoltDB as a reliable persistent
store. See repo README for reasons for this design choice and performance
implications.
Close implements io.Closer
CommitState must atomically replace all persisted metadata in the current
store with the set provided. It must not return until the data is persisted
durably and in a crash-safe way otherwise the guarantees of the WAL will be
compromised. The WAL will only ever call this in a single thread at one
time and it will never be called concurrently with Load however it may be
called concurrently with Get/SetStable operations.
Load loads the existing persisted state. If there is no existing state
implementations are expected to create initialize new storage and return an
empty state.
*BoltMetaDB : github.com/polarsignals/wal/types.MetaStore
*BoltMetaDB : github.com/prometheus/common/expfmt.Closer
*BoltMetaDB : io.Closer
Package-Level Variables (only one)
ErrUnintialized is returned when any call is made before Load has opened
the DB file.
Package-Level Constants (total 4)
FileName is the default file name for the bolt db file.
*Bucket are the names used for internal bolt buckets
We just need one key for now so use the byte 'm' for meta arbitrarily.
const StableBucket = "stable"![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |