Documentation ¶
Index ¶
- Constants
- type Store
- func (s *Store) Close() error
- func (s *Store) Err() error
- func (s *Store) Flush()
- func (s *Store) Get(key []byte) ([]byte, bool, error)
- func (s *Store) GetSize(key []byte) (types.Size, bool, error)
- func (s *Store) Has(key []byte) (bool, error)
- func (s *Store) IndexStorageSize() (int64, error)
- func (s *Store) Put(key []byte, value []byte) error
- func (s *Store) Remove(key []byte) (bool, error)
- func (s *Store) Start()
Constants ¶
const DefaultBurstRate = 4 * 1024 * 1024
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
func OpenStore ¶
func OpenStore(ctx context.Context, path string, primary primary.PrimaryStorage, indexSizeBits uint8, indexFileSize uint32, syncInterval time.Duration, burstRate types.Work, gcInterval time.Duration, immutable bool) (*Store, error)
OpenStore opens the index and freelist and returns a Store with the given primary.
Specifying 0 for indexSizeBits and indexFileSize results in using their default values. A gcInterval of 0 disables garbage collection.
func (*Store) Close ¶
Close stops store goroutines and calls Close on the index, primary, and freelist. This flushes any outstanding work and buffered data to their files.
func (*Store) Flush ¶
func (s *Store) Flush()
Flush writes outstanding work and buffered data to the primary, index, and freelist files. It then syncs these files to permanent storage.
func (*Store) IndexStorageSize ¶ added in v0.1.0
IndexStorageSize returns the storage used by the index files. This includes the `.info` file and the `.free` file and does not include primary storage.