adarshsanjeev commented on code in PR #16175:
URL: https://github.com/apache/druid/pull/16175#discussion_r1553104056
##########
extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/exec/ControllerImpl.java:
##########
@@ -2036,19 +2045,24 @@ private static boolean isTimeBucketedIngestion(final
MSQSpec querySpec)
* Compute shard columns for {@link DimensionRangeShardSpec}. Returns an
empty list if range-based sharding
* is not applicable.
*/
- private static List<String> computeShardColumns(
+ private static Pair<List<String>, String> computeShardColumns(
final RowSignature signature,
final ClusterBy clusterBy,
- final ColumnMappings columnMappings
+ final ColumnMappings columnMappings,
+ boolean mayHaveMultiValuedClusterByFields
)
{
+ if (mayHaveMultiValuedClusterByFields) {
+ // DimensionRangeShardSpec cannot handle multi-valued fields.
+ return Pair.of(Collections.emptyList(), "Cannot use RangeShardSpec, the
fields in the CLUSTER BY clause contains a multivalues. Using NumberedShardSpec
instead.");
Review Comment:
I don't think we have the column name at this point, we only store a boolean
mayContainMultivalues. Updated the message a bit
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]