fix: Unregister special forms SWITCH rewrite#15549
fix: Unregister special forms SWITCH rewrite#15549peterenescu wants to merge 1 commit intofacebookincubator:mainfrom
Conversation
|
@peterenescu has exported this pull request. If you are a Meta employee, you can view the originating Diff in D87355432. |
✅ Deploy Preview for meta-velox canceled.
|
pramodsatya
left a comment
There was a problem hiding this comment.
Thanks @peterenescu. Could you also please remove SwitchRewriteTest.cpp from velox/expression/tests/CMakeLists.txt ?
5ae1d92 to
99272c5
Compare
|
@peterenescu, could you please retain |
|
@pramodsatya If there is a correctness problem it won't work for PrestoC++ either. We have to investigate what the correctness issues are. I see you opened the issue. Looks to be a type issue where the fuzzer generates two large integer literals but on constant folding the resulting value would overflow the type. I would say this is expected and a technically a user error that the fuzzer should skip, no? @peterenescu Instead of fully reverting it, can we just not register the rewrite when registering the special form? That way the changes are minimal and we still have an option to register it separately in PrestoC++? |
|
@czentgr The issue is not with the fuzzer but a behavior change that was introduced by the switch rewrite. More information can be found here: #15486 (comment). @pramodsatya As the investigation above identifies, there is a meaningful behavioral change that will affect expression evaluation in Presto C++ as it uses Velox and any ongoing efforts in prestodb/presto#22927 to use Velox constant folding and expression rewrite in coordinator. Therefore, it would be prudent to test and certify this behavior change before we introduce it to Presto. To clarify, we were hoping to revert only SWITCH while we test and verify internally and add it back hopefully by next week. |
|
Thanks @czentgr, @peterenescu. I agree the
We should definitely avoid applying |
Summary: SWITCH rewrite has correctness issues identified by expression fuzzer and causes behavior mismatch. More information and investigation can be found here: facebookincubator#15486 Differential Revision: D87355432
99272c5 to
37ec069
Compare
|
Update on next steps: #15486 (comment) TLDR: we are closing the PR and will work on enhancing the fuzzer to handle this case |
Summary:
SWITCH rewrite has correctness issues identified by expression fuzzer and causes behavior mismatch.
More information and investigation can be found here: #15486
Differential Revision: D87355432