You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "tustvold (via GitHub)" <gi...@apache.org> on 2023/03/12 12:28:13 UTC

[GitHub] [arrow-datafusion] tustvold opened a new issue, #5562: Push Down Offset to TableScan

tustvold opened a new issue, #5562:
URL: https://github.com/apache/arrow-datafusion/issues/5562

   **Is your feature request related to a problem or challenge? Please describe what you are trying to do.**
   <!--
   A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 
   (This section helps Arrow developers understand the context and *why* for this feature, in addition to  the *what*)
   -->
   
   TableScan currently contains a single `fetch` parameter, that acts as an overall limit.
   
   The PushDownLimit optimizer rule is therefore forced to push down the `limit + offset`, even though it determines both separately.
   
   Pushing down the offset separately allows formats to skip decoding lines in the case of CSV or JSON, or skip even fetching the corresponding bytes in the case of parquet.
   
   **Describe the solution you'd like**
   <!--
   A clear and concise description of what you want to happen.
   -->
   
   I would suggest removing `TableScan::fetch` and replacing it with separate limit and offset fields. These could then be pushed down in TableProvider, and FileScanConfig. This would likely need to be a breaking change.
   
   **Describe alternatives you've considered**
   <!--
   A clear and concise description of any alternative solutions or features you've considered.
   -->
   
   **Additional context**
   <!--
   Add any other context or screenshots about the feature request here.
   -->
   


-- 
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: github-unsubscribe@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org