QueryIndexesLifecycle
class QueryIndexesLifecycle(manifest: Manifest, types: List<AggregateType>, backend: SnapshotQueryBackend, catalog: QuerySchemaCatalog, events: EventQueryBackend = EventQueryBackend.NONE, eventTypes: List<AggregateType> = emptyList(), ddlKeyOf: (store: String?) -> String = { DDL }) : SmartLifecycle
Manages the indexes of every aggregate type in types at startup, after the backends' schemas exist (BackendsLifecycle) and before the node starts: each aggregate's storage is prepared, its query model compiled from catalog, and its Manifest's x-wow-index planned and managed by backend as the ddl of the store it is on says (wow.stores.<store>.ddl, else wow.ddl). A key the model cannot index fails the start, and so does an index that validate finds missing or invalid: a query it would serve scans the whole collection.
Constructors
Link copied to clipboard
constructor(manifest: Manifest, types: List<AggregateType>, backend: SnapshotQueryBackend, catalog: QuerySchemaCatalog, events: EventQueryBackend = EventQueryBackend.NONE, eventTypes: List<AggregateType> = emptyList(), ddlKeyOf: (store: String?) -> String = { DDL })