Jackie-Jiang commented on code in PR #11744: URL: https://github.com/apache/pinot/pull/11744#discussion_r1355966332
########## pinot-spi/src/main/java/org/apache/pinot/spi/config/table/StarTreeIndexConfig.java: ########## @@ -42,15 +45,17 @@ public StarTreeIndexConfig( @JsonProperty(value = "dimensionsSplitOrder", required = true) List<String> dimensionsSplitOrder, @JsonProperty("skipStarNodeCreationForDimensions") @Nullable List<String> skipStarNodeCreationForDimensions, @JsonProperty(value = "functionColumnPairs", required = true) List<String> functionColumnPairs, - @JsonProperty("maxLeafRecords") int maxLeafRecords) { - Preconditions - .checkArgument(CollectionUtils.isNotEmpty(dimensionsSplitOrder), "'dimensionsSplitOrder' must be configured"); - Preconditions - .checkArgument(CollectionUtils.isNotEmpty(functionColumnPairs), "'functionColumnPairs' must be configured"); + @JsonProperty(value = "functionColumnPairsConfig") @Nullable + List<FunctionColumnPairConfig> functionColumnPairConfig, @JsonProperty("maxLeafRecords") int maxLeafRecords) { Review Comment: I think we can introduce this new config and eventually deprecate the existing `functionColumnPairs`. If we want to move towards this direction, we should merge `functionColumnPairs` into this new config, and always use the new config when building the star-tree. This new config is very similar to `AggregationConfig`, maybe we can name it `StarTreeAggregationConfig`, and the property name being `aggregationConfigs` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org