-
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
fix wrong expr evaluation on bool-type property in with #4846
Conversation
4283b0c
to
299f672
Compare
Codecov ReportBase: 84.56% // Head: 84.63% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## master #4846 +/- ##
==========================================
+ Coverage 84.56% 84.63% +0.07%
==========================================
Files 1358 1358
Lines 136387 136399 +12
==========================================
+ Hits 115331 115446 +115
+ Misses 21056 20953 -103
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
9e705c0
to
d0ea262
Compare
ad6bde9
to
97c245b
Compare
2bd5abd
to
9d940c7
Compare
9d940c7
to
c511981
Compare
I think |
It is null, but it is bad null which would trigger a query-terminating error message.
We've discussed about the design of using |
c511981
to
b164fa4
Compare
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
What type of PR is this?
What problem(s) does this PR solve?
Issue(s) number:
Close https://github.com/vesoft-inc/nebula-ent/issues/1574
Description:
An
e.non-exist-prop == true
expr is rewritten toe.non-exist-prop
without checking whethere.non-exist-prop
exists. This is fine by itself.And, while the filter operator evaluates the
e.non-exist-prop
condition, it finds it to be of theValue::kNullUnknownProp
type. This causes unexpected error messages that terminte the query.After discussion, we've decided that
e.non-exist-prop == true
shall return a plain null value.How do you solve it?
e.non-exist-prop == true
returns plain null.Special notes for your reviewer, ex. impact of this fix, design document, etc:
It may be the case that all nulls of the unkown_prop type shall be changed to plain ones. But I want to keep the impact of a bug fix to its minimal level. So I only made this change for edges, excluding tags' properties. This may cause inconsistent nulls in the results, which I think is probabaly a minor issue.
Checklist:
Tests:
Affects:
Release notes:
Please confirm whether to be reflected in release notes and how to describe: