Jackie-Jiang opened a new pull request #5483: URL: https://github.com/apache/incubator-pinot/pull/5483
Motivation: For historic reason, BrokerRequest does not support expressions natively. In order to support expressions (transform), the current solution is to store the expressions as String and compile them when constructing the operators. The problem with this approach is that the same compilation is performed multiple times on EACH segment. This could cause performance degradation when each server is hosting lots of segments. In this PR, we introduced a new Object - ServerQuery to represent the query request on server side. It is already fully compiled and can be shared by all the segments. We can also add helper variables into this class to cache the result of the common operations for all segments to improve the performance. The new ServerQuery can also help isolating the execution layer from the transport layer. In the future if we decide to switch to another protocol for Broker-Server communication, we don't need to change anything for the execution layer. All we need is a new converter to convert the transport Object to ServerQuery. Minor fixes: - Support transform expression for IN and BETWEEN predicate ---------------------------------------------------------------- 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: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org