Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements to the Rel transpiler #2699

Conversation

relationalai-opensource
Copy link
Contributor

Various improvements to the Rel transpiler:

  • Add support for the restrict operator, ensuring that a restrict following join or project does not materialize unnecessary columns in intermediate relations in the transpiled Rel query.
  • Improvements to the way that the schema is constructed. These changes should make it easier to ensure that the required classes are added to the schema before the query can be transpiled to Rel. These changes will make it easier to transpile queries which use match.
  • Improved formatting of the output Rel query for better readability.
  • Improved debugging and logging in the case of errors during query compilation.
  • Added test cases.
  • Property mappings are now correctly used by the transpiler to map onto Rel relations corresponding to properties, whereas previously only class mappings were used.
  • Fix bug in handling of groupby.
  • General improvements to the generated Rel, for example, improved handling of isEmpty().
  • Miscellaneous code cleanup and bug fixes.

This PR builds on the work of #2622, and therefore that PR must be merged first.

What type of PR is this?

Improvement

What does this PR do / why is it needed ?

Support for more types of query by the Rel backend. This PR also improves the logging of errors when a Pure query is not supported by the Rel transpiler.

Does this PR introduce a user-facing change?

This PR is backwards compatible in the sense that existing queries will continue to be supported without any changes.

Some function names related to schema creation have changed. See test cases for examples.

…ient generated Rel, a new implementation of schema construction via PURE model traversal, improved test coverage, bug fixes, and improved logging and debugging.
Copy link

Test Results

     748 files  ±0       748 suites  ±0   1h 5m 48s ⏱️ +23s
12 287 tests ±0  12 122 ✔️ ±0  165 💤 ±0  0 ±0 
15 321 runs  ±0  15 146 ✔️ ±0  175 💤 ±0  0 ±0 

Results for commit 9ecef31. ± Comparison against base commit 44a7171.

@relationalai-opensource
Copy link
Contributor Author

This PR can be closed because it is superseded by PR#2702 which has now been merged.

@andrew-bate-rai
Copy link
Contributor

This PR can be closed because it is superseded by #2702. Apologies for the noise.

@finos-admin
Copy link
Member

This PR is stale because it has been open for 30 days with no activity. Please remove stale label or add any comment to keep this open. Otherwise this will be closed in 5 days.

@finos-admin
Copy link
Member

This PR was closed because it has been inactive for 35 days. Please re-open if this PR is still relevant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants