ignite-3 icon indicating copy to clipboard operation
ignite-3 copied to clipboard

IGNITE-20294: Sql. Using UDF as a place for system_range function

Open lowka opened this issue 1 year ago • 0 comments

Provides implementation of a table function that does not store its state inside SQL row.

  • ScanNode now uses TableFunction instead of an iterable.
  • Every scan creates a new instance of table function, and then uses it to produce more rows. When scan completes that instance is closed.

TableFunction - some table function. TableFunctionInstance - concrete implementation of a table function (Scan operator creates an instance of table function per scan. TableFunctionRegistry (for a lack of a better name) converts RexCalls into TableFunctions

https://issues.apache.org/jira/browse/IGNITE-20294


Thank you for submitting the pull request.

To streamline the review process of the patch and ensure better code quality we ask both an author and a reviewer to verify the following:

The Review Checklist

  • [ ] Formal criteria: TC status, codestyle, mandatory documentation. Also make sure to complete the following:
    - There is a single JIRA ticket related to the pull request.
    - The web-link to the pull request is attached to the JIRA ticket.
    - The JIRA ticket has the Patch Available state.
    - The description of the JIRA ticket explains WHAT was made, WHY and HOW.
    - The pull request title is treated as the final commit message. The following pattern must be used: IGNITE-XXXX Change summary where XXXX - number of JIRA issue.
  • [ ] Design: new code conforms with the design principles of the components it is added to.
  • [ ] Patch quality: patch cannot be split into smaller pieces, its size must be reasonable.
  • [ ] Code quality: code is clean and readable, necessary developer documentation is added if needed.
  • [ ] Tests code quality: test set covers positive/negative scenarios, happy/edge cases. Tests are effective in terms of execution time and resources.

Notes

lowka avatar May 09 '24 12:05 lowka