QueryStores
class QueryStores(val bulkheads: Map<String, QueryBulkhead> = emptyMap(), val limits: List<AdaptiveQueryLimit> = emptyList(), val datasets: QueryBulkhead? = null, unpinned: (AggregateType) -> UnpinnedEvents = { UnpinnedEvents.ALLOW })
How the queries of a node's stores run, composed once, in wow-query, so every host gets the same bounds: the bulkheads of the stores, by name, their adaptive limits, the bulkhead every dataset query runs under (datasets), and whether each aggregate type's events queries that name no aggregate run (unpinned). A state read's replay of a log runs under the bulkhead of the log's store too (replay).
Constructors
Link copied to clipboard
constructor(bulkheads: Map<String, QueryBulkhead> = emptyMap(), limits: List<AdaptiveQueryLimit> = emptyList(), datasets: QueryBulkhead? = null, unpinned: (AggregateType) -> UnpinnedEvents = { UnpinnedEvents.ALLOW })
Properties
Link copied to clipboard
Every bulkhead: the stores' and the datasets'.
Link copied to clipboard
Link copied to clipboard
The bulkhead of the dataset queries (wow.query.dataset.max-concurrent), or null when they run unbounded. Its limit is fixed: the warehouse's writes (the ClickHouse Sink's) give the node no write pressure to adapt to.
Link copied to clipboard
The bounds of bulkheads that adapt to their store's write pressure.