clintropolis commented on a change in pull request #9638:
URL: https://github.com/apache/druid/pull/9638#discussion_r472812881
##########
File path:
processing/src/main/java/org/apache/druid/query/aggregation/AggregatorFactory.java
##########
@@ -211,22 +213,35 @@ public AggregatorFactory
getMergingFactory(AggregatorFactory other) throws Aggre
public abstract List<String> requiredFields();
/**
- * Get the type name of the intermediate type for this aggregator. This is
the same as the type returned by
+ * Get the "intermediate" {@link ValueType} for this aggregator. This is the
same as the type returned by
* {@link #deserialize} and the type accepted by {@link #combine}. However,
it is *not* necessarily the same type
* returned by {@link #finalizeComputation}.
+ */
+ public abstract ValueType getType();
Review comment:
We already have `ColumnCapabilities` which is a richer but a bit more
segment focused version of a thing that provides details about a given column,
and #10277 expands that to also include complex type name, so I think if we are
going to use a consolidated type we should consider using that since it is used
pretty heavily throughout the engines to help determine the correct way to
process columns (or a new interface that provides a subset of the functionality
that `ColumnCapabilities` can extend as mentioned in another thread). I need to
think a bit harder about what would be most useful for `RowSignature` to have
on hand, which is currently the type used to serve similar functionality to
higher levels of the engine what `ColumnCapabilities` provides at lower levels,
before making a change like this though.
I'm not sure if it is useful to combine the intermediary and finalized types
in one place, since callers should typically only need one or the other,
depending on the caller, as mentioned in PR description and this thread
https://github.com/apache/druid/pull/9638#discussion_r417758925. We currently
haven't quite added enough information through for most callers to be able to
provide this context quite yet though, so it also needs a bit further thought.
----------------------------------------------------------------
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]