spring

This package contains all the tools needed for the Spring configuration.

Bean filters

Several annotations are provided to filter in/out beans and configuration classes, depending on the Spring parameters.

Annotation Meaning Equivalent expression
@ConditionalOnAdjustmentsWithDirectQuery The adjustments are activated (only R/O) with DirectQuery configuration.sign-off.enabled && starter.deployment.type == direct-query && directquery.withAdjustments
@ConditionalOnClickHouse DirectQuery is set to run with ClickHouse directquery.database.type == clickhouse && starter.deployment.type == direct-query
@ConditionalOnDirectQueryDatabase DirectQuery is enabled starter.deployment.type == direct-query
@ConditionalOnInMemoryDatabase An InMemory database is used starter.deployment.type == in-memory
@ConditionalOnMSSQL DirectQuery is set to run with Microsoft SQL server directquery.database.type == mssql && starter.deployment.type == direct-query
@ConditionalOnNoAdjustmentsWithDirectQuery Adjustments are deactivated with DirectQuery and sign-off compatibility configuration.sign-off.enabled && starter.deployment.type == direct-query && ! directquery.withAdjustments
@ConditionalOnSignOffDisabled Adjustments and sign-off are disabled ! configuration.sign-off.enabled
@ConditionalOnSignOffEnabled Adjustments and sign-off are activated configuration.sign-off.enabled && ! starter.deployment.type == direct-query
@ConditionalOnSignOffHierarchy Sign-off hierarchy has to be displayed configuration.sign-off.enabled
@ConditionalOnSnowflake DirectQuery is set to run with Snowflake directquery.database.type == snowflake && starter.deployment.type == direct-query
@ConditionalOnNettyBus We use Netty to communicate across cubes starter.deployment.transport == netty
@ConditionalOnLocalBus We use the local bus to communicate across cubes starter.deployment.transport == local
@ConditionalOnQueryNode Server node contains only the query cube starter.deployment.type == query-node
@ConditionalOnHasDataCube Server has some data cubes starter.deployment.type != query-node
@ConditionalNotOnDirectQueryDatabase DirectQuery is not enabled starter.deployment.type != direct-query

Spring parameters

Value Meaning Property class
starter.deployment.type Select the node type: in-memory / query-node / direct-query
starter.deployment.transport The type of messaging bus: netty / local / none
configuration.sign-off.enabled Sign-off feature is activated SignOffEnabledProperties
directquery.withAdjustments The adjustments information is available in the database DirectQuerySpringProperties
directquery.clustering.enabled The DirectQuery clustering feature is activated ClusteringSpringProperties
directquery.clustering.fields Default fields used for the clustering ClusteringSpringProperties
directquery.clustering.clusteringPerTable A map table of list of fields to set up the clustering ClusteringSpringProperties
directquery.schema.validation.validateOnStartup The schema validation is run on startup ValidationSpringProperties
directquery.schema.validation.failStartupOnBadSchema If the schema validation fails, the application will stop ValidationSpringProperties
directquery.database.type The type of the connected database DatabaseSpringProperties
directquery.database.snowflake.connectionString The JDBC connection string SnowflakeSpringProperties
directquery.database.snowflake.username The user name for this connection - it will fill the SFSessionProperty.USER entry SnowflakeSpringProperties
directquery.database.snowflake.password The password for this connection - it will fill the SFSessionProperty.PASSWORD entry SnowflakeSpringProperties
directquery.database.snowflake.warehouse The warehouse used for computation SnowflakeSpringProperties
directquery.database.snowflake.feedingWarehouse The feeding warehouse SnowflakeSpringProperties
directquery.database.snowflake.database The database where the schema is located - it will also feed SFSessionProperty.DATABA SE SnowflakeSpringProperties
directquery.database.snowflake.schema The schema used by DirectQuery - it will also feed SFSessionProperty.SCHEMA SnowflakeSpringProperties
directquery.database.snowflake.role The user role used for the database access - it will fill SFSessionProperty.ROLE SnowflakeSpringProperties
directquery.database.snowflake.arrayAggWrapperFunctionName Optional User Defined Function name of the custom array agg function registered on Snowflake to wrap the ARRAY_AGG operations on multi-rows vectors SnowflakeSpringProperties
directquery.database.snowflake.additionalOptions Any additional properties that need to be set, the keys should be in SFSessionProperty SnowflakeSpringProperties
directquery.database.snowflake.externalDatabaseQueryTimeout Set the external database query timeout SnowflakeSpringProperties
directquery.database.snowflake.maxSubQueriesAllowedInMultiStepsQuery SnowflakeSpringProperties
directquery.database.snowflake.getByKeyBehavior SnowflakeSpringProperties
directquery.database.snowflake.useAutoVectorizer SnowflakeSpringProperties
directquery.database.snowflake.autoVectorizerDelimiter SnowflakeSpringProperties
directquery.database.snowflake.minThresholdForAutoVectorizer SnowflakeSpringProperties
directquery.database.snowflake.useTimeTravel SnowflakeSpringProperties
directquery.database.snowflake.timeTravelDiscoveryQueryTimeout Set the external database time-travel discovery timeout and validate user input SnowflakeSpringProperties
directquery.database.snowflake.maxResultSetSize The max size of the Snowflake result set when split by Snowflake (in Bytes) SnowflakeSpringProperties
directquery.database.clickhouse.username ClickhouseSpringProperties
directquery.database.clickhouse.password ClickhouseSpringProperties
directquery.database.clickhouse.hostName ClickhouseSpringProperties
directquery.database.clickhouse.port ClickhouseSpringProperties
directquery.database.clickhouse.database ClickhouseSpringProperties
directquery.database.clickhouse.externalDatabaseQueryTimeout ClickhouseSpringProperties
directquery.database.clickhouse.maxSubQueriesAllowedInMultiStepsQuery ClickhouseSpringProperties
directquery.database.clickhouse.getByKeyBehavior ClickhouseSpringProperties
directquery.database.mssql.username MSSQLSpringProperties
directquery.database.mssql.password MSSQLSpringProperties
directquery.database.mssql.hostName MSSQLSpringProperties
directquery.database.mssql.port MSSQLSpringProperties
directquery.database.mssql.database MSSQLSpringProperties
directquery.database.mssql.schema MSSQLSpringProperties
directquery.database.mssql.encrypt MSSQLSpringProperties
directquery.database.mssql.trustServerCertificate MSSQLSpringProperties
directquery.database.mssql.connectRetryCount MSSQLSpringProperties
directquery.database.mssql.externalDatabaseQueryTimeout MSSQLSpringProperties
directquery.database.mssql.maxSubQueriesAllowedInMultiStepsQuery MSSQLSpringProperties
directquery.database.mssql.getByKeyBehavior MSSQLSpringProperties
directquery.database.mssql.useAutoVectorizer MSSQLSpringProperties
directquery.database.mssql.autoVectorizerDelimiter MSSQLSpringProperties
directquery.database.mssql.minThresholdForAutoVectorizer MSSQLSpringProperties