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
[native] Fix the intermediate type of approx_percentile #18386
Conversation
This pull request was exported from Phabricator. Differential Revision: D39733152 |
Summary: X-link: prestodb/presto#18386 Pull Request resolved: facebookincubator#2621 Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix facebookincubator#2430 Differential Revision: D39733152 fbshipit-source-id: 6256b33f2ac3e6da405f0e0a0b14bfb85c17c8b0
Summary: X-link: prestodb/presto#18386 Pull Request resolved: facebookincubator#2621 Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix facebookincubator#2430 Differential Revision: D39733152 fbshipit-source-id: 5fc2ce9bbcecff2881d5e275393cc4ee4eab55c9
Summary: X-link: prestodb/presto#18386 Pull Request resolved: facebookincubator#2621 Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix facebookincubator#2430 Differential Revision: D39733152 fbshipit-source-id: 80ea0a3a9799ee7a070cc542b6b91268be71ae01
d066563
to
1e91a24
Compare
This pull request was exported from Phabricator. Differential Revision: D39733152 |
Summary: X-link: prestodb/presto#18386 Pull Request resolved: facebookincubator#2621 Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix facebookincubator#2430 Reviewed By: mbasmanova Differential Revision: D39733152 fbshipit-source-id: f7476a9a4a2e92d7fdc976f388a07692787cada8
This pull request was exported from Phabricator. Differential Revision: D39733152 |
1e91a24
to
1efc007
Compare
Summary: X-link: prestodb/presto#18386 Pull Request resolved: #2621 Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix #2430 Reviewed By: mbasmanova Differential Revision: D39733152 fbshipit-source-id: b47e784aabd70ba4324f0208bee35d427b7a1dc1
@ChunxuTang Hi can you take a look? The test will pass once we advance the Velox version |
@mbasmanova Can you help stamp and merge this PR? |
@Yuhta Jimmy, there are test failures. Would you take a look? |
The test should pass if we sync up the Velox version (I ran it on devserver before I land the change internally). Should I advance the version in this PR to make it pass? |
Yes, let's advance Velox version and add an e2e test that runs intermediate aggregation using approx_percentile. Also, please, update the commit message to following the guidelines at https://cbea.ms/git-commit/ and wrap it at 72 characters. |
1efc007
to
8b0aca4
Compare
ROW
8b0aca4
to
87ea8fd
Compare
Before this change, intermediate aggregation node for `approx_percentile` in worker only sees a type signature of `VARBINARY -> VARBINARY`, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is not `DOUBLE`. This fix changes the intermediate result type to `ROW` so that we can get the value type from it and instantiate accumulator with proper type. Fix facebookincubator/velox#2430
87ea8fd
to
e1585a4
Compare
@spershin @mbasmanova Some unrelated tests failed, can we still merge it?
|
@majetideepak Deepak, I thought you fixed these failures. Would you take a look?
|
@mbasmanova these failures are different. #18437 is tracking this. I am going to take a look. |
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.
@Yuhta Thank you, Jimmy. Accepting based on @majetideepak comment that suggests that test failures are unrelated and are being looked into separately.
Summary:
Before this change, intermediate aggregation node for
approx_percentile
in worker only sees a type signature ofVARBINARY -> VARBINARY
, thus not be able to figure out the actual value type and cannot perform the merge properly when the value type is notDOUBLE
.This fix changes the intermediate result type to
ROW
so that we can get the value type from it and instantiate accumulator with proper type.Fix facebookincubator/velox#2430
Differential Revision: D39733152