abhishekagarwal87 commented on code in PR #15058:
URL: https://github.com/apache/druid/pull/15058#discussion_r1345876941
##########
processing/src/main/java/org/apache/druid/query/dimension/PredicateFilteredDimensionSelector.java:
##########
@@ -82,7 +86,7 @@ public boolean matches()
}
}
// null should match empty rows in multi-value columns
- return nullRow && value == null;
+ return nullRow && (includeUnknown || value == null);
Review Comment:
So if value is not null, an empty row MVD can match that value if
includeUnknown is set to true?
##########
extensions-core/druid-bloom-filter/src/main/java/org/apache/druid/query/filter/BloomDimFilter.java:
##########
@@ -165,6 +165,12 @@ public boolean applyNull()
}
};
}
+
+ @Override
+ public boolean isNullInputUnknown()
Review Comment:
what does the name really mean here?
##########
docs/querying/sql-data-types.md:
##########
@@ -157,9 +157,9 @@ runtime property controls Druid's boolean logic mode. For
the most SQL compliant
When `druid.expressions.useStrictBooleans = true`, Druid uses three-valued
logic for
Review Comment:
```suggestion
When `druid.expressions.useStrictBooleans = true`, Druid uses [three-valued
logic](https://en.wikipedia.org/wiki/Three-valued_logic#SQL) for
```
##########
processing/src/main/java/org/apache/druid/query/filter/vector/ArrayVectorValueMatcher.java:
##########
@@ -78,7 +77,9 @@ public ReadableVectorMatch match(final ReadableVectorMatch
mask)
for (int i = 0; i < mask.getSelectionSize(); i++) {
final int rowNum = mask.getSelection()[i];
Object o = vector[rowNum];
- if (o == null || o instanceof Object[]) {
+ if (includeUnknown && o == null &&
predicateFactory.isNullInputUnknown()) {
+ selection[numRows++] = rowNum;
+ } else if (o == null || o instanceof Object[]) {
Review Comment:
```suggestion
} else if (o instanceof Object[]) {
```
shouldn't it be the above?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]