IndexOptions

class IndexOptions(val maxTermsPerSegment: Int = 1 shl 20, val maxTermBytes: Int = 512, val maxDepth: Int = 32, val maxChildren: Int = 1024, val damagedSidecars: DamagedIndexPolicy = DamagedIndexPolicy.REPORT, val maxColumnValuesPerSegment: Int = 1 shl 24, val columnTextBoundBytes: Int = 64)

Tuning for IndexCatalog.

Every bound here is on caller-controlled shape rather than on volume, and that is the same distinction CatalogOptions draws. A document's nesting, its array lengths and the number of distinct values at a path all come from whoever wrote it, and this code runs inside flush and compaction — a document that made the walk expensive would make the engine's background maintenance expensive, which is a far worse outcome than an index that reports itself incomplete.

Constructors

Link copied to clipboard
constructor(maxTermsPerSegment: Int = 1 shl 20, maxTermBytes: Int = 512, maxDepth: Int = 32, maxChildren: Int = 1024, damagedSidecars: DamagedIndexPolicy = DamagedIndexPolicy.REPORT, maxColumnValuesPerSegment: Int = 1 shl 24, columnTextBoundBytes: Int = 64)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

Bytes of a string a column's bounds may keep before truncating.

Link copied to clipboard

What to do about a sidecar that will not decode.

Link copied to clipboard

How many fields of an object, or elements of an array, are visited.

Link copied to clipboard

Values one shredded column may hold for one segment.

Link copied to clipboard

How deep the walk goes. Matches CatalogOptions.maxDepth's reasoning.

Link copied to clipboard

Bytes one term may occupy.

Link copied to clipboard

Distinct terms one index may hold for one segment.

Functions

Link copied to clipboard
open override fun toString(): String