anuragrai16 opened a new issue, #17118: URL: https://github.com/apache/pinot/issues/17118
When queries such as, `SELECT *FROM main_table WHERE uuid IN ( SELECT uuid FROM lookup_table WHERE filter = 'true' );` is executed in Pinot, - The V1 engine Pinot V1 uses IN_SUBQUERY where the internal select is first executed to get the list of UUIDs And then passed as a static list to run the outer filter - The MSE Lite engine on the other hand will by default evaluate the `IN ...` subquery as a semi-join executed in the broker, which may or may not be performant (based on the size of the results) We should look at some intelligent way of deciding between pushing the subquery down as a filter or use a SEMI_JOIN based on the result size. Or, we can expose a query hint that allows users to specify whether to use sub-plan based execution or not. CC @ankitsultana -- 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]
