-
Notifications
You must be signed in to change notification settings - Fork 93
feat: support Nested Lists #627
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
base: main
Are you sure you want to change the base?
feat: support Nested Lists #627
Conversation
18967e4 to
9e99091
Compare
benbellick
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left a few comments. Thanks!
core/src/main/java/io/substrait/expression/proto/ExpressionProtoConverter.java
Outdated
Show resolved
Hide resolved
core/src/main/java/io/substrait/expression/proto/ProtoExpressionConverter.java
Outdated
Show resolved
Hide resolved
core/src/test/java/io/substrait/type/proto/NestedListExpressionTest.java
Show resolved
Hide resolved
core/src/test/java/io/substrait/type/proto/NestedListExpressionTest.java
Outdated
Show resolved
Hide resolved
core/src/test/java/io/substrait/type/proto/NestedListExpressionTest.java
Outdated
Show resolved
Hide resolved
benbellick
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just left a few more comments but the core/ part is looking great!
core/src/main/java/io/substrait/expression/proto/ProtoExpressionConverter.java
Outdated
Show resolved
Hide resolved
core/src/test/java/io/substrait/type/proto/NestedListExpressionTest.java
Show resolved
Hide resolved
core/src/test/java/io/substrait/type/proto/NestedListExpressionTest.java
Show resolved
Hide resolved
benbellick
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the core stuff looks great! I will try and take a pass at the isthmus stuff, but as I mentioned to you online, I am not as comfortable with that part of the codebase. If the changes there seem simple enough that I am comfortable approving, I will do so. Otherwise, I'll leave it to @vbarua or others to make the final judgement call 🙂
| new SqlFunction( | ||
| "nested_list", | ||
| SqlKind.OTHER_FUNCTION, | ||
| ReturnTypes.BOOLEAN, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So again, I don't really know the calcite stuff that well, but at the very least this seems unusual. What do nested list types have to do with SqlFunction? And why would the return type be BOOLEAN?
Perhaps this is some kind of workaround to get around an inherent limitation of calcite / isthmus. But if that is the case, then there should be some thorough paragraph somewhere explaining why this would be necessary.
This PR is to add support for the Expression Nested List type.
Issue
Key Changes:
Testing:
./gradlew test --tests io.substrait.isthmus.NestedExpressionsTest --debug-jvm