-
Notifications
You must be signed in to change notification settings - Fork 435
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
[VL] row_constructor in gluten will make top-level struct to null if its child fields have null value #1303
Comments
@liujiayi771 Actually we do that intentionally. Velox has a implementation for The problem we met was, at AverageAggregate.h#L187, because Velox's |
I find this behavior but not know the reason, but it seems that based on this behavior, my implementation is fine. When I check whether the sum is null, I do it when the top-level struct is null. |
Yes, that's another solution because |
@rui-mo @liujiayi771 Do you guys know whether we still need this customized function? I found an issue in |
I found there is a case match for |
@yma11 Could you help check which aggregate functions are still using |
Seems we still need the hack because tpch/tpcds failed after removing it. But the existing hack doesn't cover case for |
@yma11 Thanks for checking. Have you noticed which function causes the failure? |
I didn't check the functions because I think the root cause of these issues are caused by the additional projects we added. From the functions perspective, it will do necessary value null checks at |
Describe the bug
I have a RowVector, its top-level struct value is non-null, but some fields in child vectors are null. However, if the row data is evaluated in row_construct function in gluten, its top-level struct will become null if any of its child fields have null value. This behavior happens in https://github.com/oap-project/gluten/blob/2685c1f95aa4bd19ad37892d6d87940f77c77815/cpp/velox/compute/RowConstructor.h#L43-L47
I can't understand why when the child filed is null, the index corresponding to the top-level row also needs to be set to null?
@rui-mo I see that you participated in the review of #404, do you know the reason here? I need to make changes here, and I have to go to the reason for this code here.
The text was updated successfully, but these errors were encountered: