xzj7019 opened a new pull request, #24944: URL: https://github.com/apache/doris/pull/24944
## Proposed changes support pushing down filter through partition topn if the filter can pass through window. fix CreatePartitionTopNFromWindow bug which may generate two partition topn unexpectly. case: explain shape plan select * from (select c2, row_number() over (partition by c2) as rn from t1) T where rn<=1 and c2 = 1; before this pr: ``` | PhysicalResultSink | | --PhysicalDistribute | | ----filter((rn <= 1)) | | ------PhysicalWindow | | --------PhysicalQuickSort | | ----------PhysicalDistribute | | ------------PhysicalPartitionTopN | | --------------filter((T.c2 = 1)) | | ----------------PhysicalPartitionTopN | | ------------------PhysicalProject | | --------------------PhysicalOlapScan[t1] | +------------------------------------------+ ``` after: ``` | PhysicalResultSink | | --PhysicalDistribute | | ----filter((rn <= 1)) | | ------PhysicalWindow | | --------PhysicalQuickSort | | ----------PhysicalDistribute | | ------------PhysicalPartitionTopN | | --------------PhysicalProject | | ----------------filter((T.c2 = 1)) | | ------------------PhysicalOlapScan[t1] | +----------------------------------------+ ``` ## Further comments If this is a relatively large or complex change, kick off the discussion at [d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc... -- 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...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org