gortiz commented on code in PR #10953: URL: https://github.com/apache/pinot/pull/10953#discussion_r1238088446
########## pinot-core/src/main/java/org/apache/pinot/core/operator/filter/PrioritizedFilterOperator.java: ########## @@ -0,0 +1,51 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.pinot.core.operator.filter; + +import java.util.OptionalInt; +import org.apache.pinot.core.common.Block; +import org.apache.pinot.core.common.Operator; + + +/** + * Operators that implements this interface can define how to be sorted in an AND, as defined in + * {@link FilterOperatorUtils.Implementation#}. + */ +public interface PrioritizedFilterOperator<T extends Block> extends Operator<T> { Review Comment: I thought about that. My main concern is the separation of concerns. I can imagine that more than one FilterOperatorUtil could be used (in fact that is why we made it extensible). In that case, different implementations may use different priorities. That is why it makes sense to set the priority in FilterOperatorUtil instead of set that in the operators. But given that the FilterOperatorUtil cannot know all possible BaseFilterOperators (because they are extensible now), what we do here is to give the FilterOperatorUtil a way to hint about its own cost/priority. But I was thinking about it and given that you also did, maybe it makes sense to implement it that way. -- 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