-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Enable enable_dereference
flag for spark_expression_fuzzer_test
#7875
Conversation
✅ Deploy Preview for meta-velox canceled.
|
@mbasmanova @kgpai Could you help review? Thank you. |
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.
@rui-mo I wonder whether it would be cleaner to register kRowConstructor function in Spark.
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.
BTW, does Spark has something similar to kRowConstructor? Do semantics match?
If Spark doesn't have row_constructor, then, perhaps, we should change the Fuzzer and not expect 'row_constructor' to be present. It should be possible to test dereference expression without row_constructor function. CC: @kagamiori
|
What happens if you remove addToTypeToExpressionListByTicketTimes("row", "row_constructor"); from
? |
CC: @kagamiori |
@mbasmanova Spark does have similar function, and their semantics match. And we are using row_constructor function in Gluten for its computing.
It makes sense to register it in Spark function from my view. |
@rui-mo Thank you for clarifying. Should we than chance this PR to register row_constructor for Spark? |
@mbasmanova Thank you for the suggestion. I will make changes accordingly. |
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.
LGTM. Thank you for enabling row_constructor and enable_dereference!
@kagamiori has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
velox/expression/RowConstructor.cpp
Outdated
return functionIterator->second.factory(kRowConstructor, {}, config); | ||
} else { | ||
VELOX_FAIL( | ||
fmt::format("Function {} is not registered.", kRowConstructor)); |
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.
remove fmt::format
599ccd7
to
20cbf35
Compare
@mbasmanova @kagamiori Thanks for your review. Updated. |
@kagamiori has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
@kagamiori merged this pull request in 85df999. |
Conbench analyzed the 1 benchmark run on commit There were no benchmark performance regressions. 🎉 The full Conbench report has more details. |
Function
row_constructor
was only registered in Presto functions.In
RowConstructorCallToSpecialForm::constructSpecialForm
, no registrationwas found from function map due to the lack of registration in Spark functions.
Error occurs when accessing an invalid iterator. To fix this issue, this PR
registers
row_constructor
in Spark functions.With this fix,
enable_dereference
flag can be enabled forspark_expression_fuzzer_test.
#5967