-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Fix testFilterWithUdf #17106
Fix testFilterWithUdf #17106
Conversation
This is due to differences in how Pinot handles IEEE-754 approximate numerics pre/post Pinot 0.12.1. See apache/pinot#10637
@@ -183,7 +183,9 @@ public void testFilterWithPushdownConstraint() | |||
public void testFilterWithUdf() |
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.
Can you please fix pinot tests to use capital letters for SQL keywords like: SELECT, FROM, WHERE? Let's do it as separate Pr.
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.
Sure! Will do.
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.
Created #17109
@@ -183,7 +183,9 @@ public void testFilterWithPushdownConstraint() | |||
public void testFilterWithUdf() |
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.
Can you please let me know what are you fixing here? Is this a flaky issue? Do you have any github issues reported for the problem you are fixing? How the problem you are fixing manifests?
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.
Sure, the issue is created for Pinot: apache/pinot#10637.
Before Pinot 0.12.1 the Pinot expression FLOOR(EXP(2 * LN(3)))
return 9.0
and after 0.12.1 returns 8.0
- more details in the Pinot issue.
It is not a flaky test, it is due to differences in how Pinot handles IEEE-754 approximate numerics - specific info which affected this test is in the pinot issue.
The behavior is deterministic: pre 0.12.1 and post 0.12.1 the results are the same, just different across Pinot versions.
The problem manifested with a failing TestDynamicTable::testFilterWithUdf
. The test passes with Pinot 11.0 libraries. Also running 11.0 Pinot and 12.1 Pinot and issuing the query shows different results - the specific results are in the pinot issue.
lmk if you need any more info.
before merging this we need to verify if the Pinot results actually depend on JVM version being used instead of the Pinot version itself. |
I tried this on java11 and java17 and they behave the same. Changing Pinot version results in the different behavior. Also updated the pinot issue with those findings. To repro: Run the "latest" and "previous" version from the base connector smoke test, do
|
Also, adding lmk if you need more info. |
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.
Indeed, I can see the different behaviour as well. Thanks for including repro steps.
LGTM.
This is due to differences in how Pinot handles IEEE-754 approximate numerics pre/post Pinot 0.12.1.
See apache/pinot#10637
Description
Additional context and related issues
Release notes
(X ) This is not user-visible or docs only and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text: