clintropolis commented on a change in pull request #10277:
URL: https://github.com/apache/druid/pull/10277#discussion_r472433647



##########
File path: 
processing/src/main/java/org/apache/druid/segment/column/ColumnCapabilities.java
##########
@@ -37,6 +37,12 @@
    */
   ValueType getType();
 
+  /**
+   *
+   * If ValueType is COMPLEX, then the typeName associated with it.
+   */
+  String getTypeName();

Review comment:
       could this be `getComplexTypeName` to tie it more strongly to complex 
types? It would also match the aggregator factory changes in #9638 which I've 
started working on again recently. If you recall this discussion 
https://github.com/apache/druid/pull/9638#discussion_r410995227, I decided to 
go ahead and rename it to `getComplexTypeName` there because there are already 
breaking changes with the new abstract methods, so might as well make it 
intuitive.

##########
File path: 
processing/src/main/java/org/apache/druid/segment/incremental/IncrementalIndex.java
##########
@@ -314,7 +315,12 @@ protected IncrementalIndex(
     for (DimensionSchema dimSchema : dimensionsSpec.getDimensions()) {
       ValueType type = TYPE_MAP.get(dimSchema.getValueType());
       String dimName = dimSchema.getName();
-      ColumnCapabilitiesImpl capabilities = 
makeDefaultCapabilitiesFromValueType(type);
+
+      // Note: Things might be simpler if DimensionSchema had a method 
"getColumnCapabilities()" which could return
+      // type specific capabilities by itself. However, for various reasons, 
DimensionSchema currently lives in druid-core
+      // while ColumnCapabilities lives in druid-processing which makes that 
approach difficult.
+      ColumnCapabilitiesImpl capabilities = 
makeDefaultCapabilitiesFromValueType(type, dimSchema.getTypeName());

Review comment:
       Apologies for the conflicts here, I made some semi disruptive changes to 
push `ColumnCapabilities` into the `DimensionIndexer` implementations so they 
can be more accurate. I think the changes should still be workable with your 
addition of `DimensionHandlerProvider`, just the dimension indexer it provides 
will need to provide the complex column capabilities.




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to