BiScriptService

class BiScriptService(inspector: BiDeploymentInspector = NoOpBiDeploymentInspector, scheduler: Scheduler = BI_SCRIPT_GENERATION_SCHEDULER)

Generates a BI script end to end: prepares the desired layout, inspects the ClickHouse catalog with inspector, and renders the script.

Preparation and rendering are CPU work and run on scheduler, a bounded pool by default; when it is saturated the request fails as BiDeploymentInspectionException.Unavailable instead of queueing without bound.

Constructors

Link copied to clipboard
constructor(inspector: BiDeploymentInspector = NoOpBiDeploymentInspector, scheduler: Scheduler = BI_SCRIPT_GENERATION_SCHEDULER)

Functions

Link copied to clipboard
fun generate(options: BiScriptOptions, operation: BiScriptOperation = BiScriptOperation.Deploy, namedAggregates: () -> Set<NamedAggregate>): Mono<BiScriptResult>

Generates the script for the aggregates namedAggregates returns. It is called on scheduler, because resolving aggregate metadata can scan the classpath and must not run on the caller's (event-loop) thread.