ankitsultana commented on code in PR #14631: URL: https://github.com/apache/pinot/pull/14631#discussion_r1888666396
########## pinot-timeseries/pinot-timeseries-spi/src/main/java/org/apache/pinot/tsdb/spi/AggInfo.java: ########## @@ -41,24 +40,47 @@ * Example usage: * Map<String, String> params = new HashMap<>(); * params.put("window", "5m"); - * AggInfo aggInfo = new AggInfo("rate", params); + * AggInfo aggInfo = new AggInfo("rate", true, params); */ public class AggInfo { private final String _aggFunction; + /** + * Denotes whether an aggregate is partial or full. When returning the logical plan, language developers must not + * set this to true. This is used during Physical planning, and Pinot may set this to true if the corresponding + * aggregate node is not guaranteed to have the full data. In such cases, the physical plan will always add a + * complimentary full aggregate. + * <p> + * TODO(timeseries): Ideally we should remove this from the logical plan completely. + * </p> + */ + private final boolean _isPartial; Review Comment: Yup. Note that you should set isPartial to false in the logical plan that you return. Pinot will automatically create a partial AggInfo when the execution is split between the brokers and servers. -- 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: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org