richardstartin commented on a change in pull request #7820:
URL: https://github.com/apache/pinot/pull/7820#discussion_r758722103
##########
File path:
pinot-core/src/main/java/org/apache/pinot/core/common/DataBlockCache.java
##########
@@ -120,6 +121,17 @@ public int getNumDocs() {
return intValues;
}
+ /**
+ * Get the int values for a single-valued column.
+ *
+ * @param column Column name
+ * @param evaluator JSON path evaluator
+ * @param buffer values to fill
+ */
+ public void fillValues(String column, JsonPathEvaluator evaluator, int[]
buffer) {
Review comment:
OK. I think what’s important about this API is the _shape_ of the
result, and JsonPath evaluation will only ever produce a single vector of
values with the same row indexing, in the same way that, say, a pushed down
regular expression would. There are other obvious shapes to consider, such as
an aggregator which produces a single value, or potentially something like a
JSON UNNEST function which produces a matrix of values, typically with
different row indexing. So any early abstraction for this needs to be able to
model shape adequately. JsonPathEvaluator could be generalised to
_TransformEvaluator_ because it preserves the row indexing.
--
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]