Package-level declarations

Types

Link copied to clipboard
class CorruptLogException(message: String, val file: String, val offset: Long = -1, cause: Throwable? = null) : StoreException

The write-ahead log cannot be read as one this implementation wrote.

Link copied to clipboard
class CorruptManifestException(message: String, val file: String, val offset: Long = -1, cause: Throwable? = null) : StoreException

The manifest cannot be read as one this implementation wrote.

Link copied to clipboard
class CorruptSegmentException(message: String, val file: String, val offset: Long = -1, cause: Throwable? = null) : StoreException

A sorted segment cannot be read as one this implementation wrote.

Link copied to clipboard

An ordered walk over the documents a store holds, as one view of it sees them.

Link copied to clipboard

A durable, ordered store of JSON documents keyed by byte string.

Link copied to clipboard

When a commit is forced to stable storage.

Link copied to clipboard
class Key : Comparable<Key>

A document key: an opaque byte string ordered as unsigned bytes.

Link copied to clipboard

How much of a damaged log the engine is willing to read.

Link copied to clipboard

One segment's worth of observation.

Link copied to clipboard
interface SegmentObserver

A listener on the documents that pass through segment writing.

Link copied to clipboard

What an observer is told about a finished segment.

Link copied to clipboard

A fixed view of the store, taken at a sequence number.

Link copied to clipboard

The store has been closed. A programming error, not a data error.

Link copied to clipboard

Base class for every failure the storage core raises on its own account.

Link copied to clipboard

A write failed against the filesystem, and the store has stopped accepting new ones.

Link copied to clipboard
class StoreLockedException(message: String, cause: Throwable? = null) : StoreException

Another process — or another DocumentStore in this process — already holds the directory.

Link copied to clipboard
class StoreOptions(val durability: Durability = Durability.SYNC, val memtableMaxBytes: Long = DEFAULT_MEMTABLE_MAX_BYTES, val recoveryMode: LogRecoveryMode = LogRecoveryMode.TOLERATE_TORN_TAIL, val createIfMissing: Boolean = true, val segmentMaxBytes: Long = DEFAULT_SEGMENT_MAX_BYTES, val blockSize: Int = DEFAULT_BLOCK_SIZE, val bloomBitsPerKey: Int = DEFAULT_BLOOM_BITS_PER_KEY, val l0CompactionTrigger: Int = DEFAULT_L0_COMPACTION_TRIGGER, val baseLevelBytes: Long = DEFAULT_BASE_LEVEL_BYTES, val levelSizeMultiplier: Int = DEFAULT_LEVEL_SIZE_MULTIPLIER, val backgroundMaintenance: Boolean = true, val segmentObserver: SegmentObserver? = null)

Tuning for DocumentStore.open.

Link copied to clipboard

A snapshot of what the store is holding, for tests, benchmarks and operational visibility.

Link copied to clipboard

The directory holds files written by a newer format version.

Link copied to clipboard

A group of writes that commit together.

Properties

Link copied to clipboard

Default byte budget for level 1; each level below it is DEFAULT_LEVEL_SIZE_MULTIPLIER times larger.

Link copied to clipboard

Default block size: 4 KiB, one page.

Link copied to clipboard

Default bloom budget: 10 bits per key, a roughly 1% false-positive rate.

Link copied to clipboard

Default number of level-0 segments that triggers a compaction.

Link copied to clipboard

Default growth factor between levels.

Link copied to clipboard

Default memtable ceiling: 64 MiB, the same working-set size RocksDB defaults to.

Link copied to clipboard

Default ceiling on one sorted segment: 8 MiB.

Link copied to clipboard
const val LEVEL_COUNT: Int = 7

Number of levels below level 0. Seven levels at a factor of ten reach far past any embedded store.