msokolov commented on code in PR #12547: URL: https://github.com/apache/lucene/pull/12547#discussion_r1330093278
########## lucene/facet/src/java/org/apache/lucene/facet/taxonomy/FloatTaxonomyFacets.java: ########## @@ -37,33 +37,43 @@ abstract class FloatTaxonomyFacets extends TaxonomyFacets { // TODO: also use native hash map for sparse collection, like IntTaxonomyFacets - /** Aggregation function used for combining values. */ - final AssociationAggregationFunction aggregationFunction; + /** Aggregation functions used for combining values. */ + final List<AssociationAggregationFunction> aggregationFunctions; /** Per-ordinal value. */ - float[] values; + float[][] values; + + @Override + boolean hasValues() { + return values != null; + } + + void initializeValueCounters() { + if (values == null) { + values = new float[aggregationFunctions.size()][taxoReader.getSize()]; Review Comment: this seems like a scary amount of RAM we could end up requiring. Are we sure that all the labels in taxoReader will have nonzero values? I wonder if we ought to switch to a sparse approach? -- 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: issues-unsubscr...@lucene.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org