julianhyde commented on code in PR #3984:
URL: https://github.com/apache/calcite/pull/3984#discussion_r1806915759
##########
core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java:
##########
@@ -1217,12 +1219,21 @@ protected void validateNamespace(final
SqlValidatorNamespace namespace,
// fields; these are neutralized if the consuming query filters on
them.
final ImmutableBitSet mustFilterFields =
namespace.getMustFilterFields();
- if (!mustFilterFields.isEmpty()) {
+ // Remnant must filter fields are fields that are not selected and
cannot
Review Comment:
I see. If `t` has a must-filter field `f` and bypass fields `b0` and `b1`,
then the query `select b0, b1 from t` has no must-filter fields, no bypass
fields, but two remnant fields `[b0, b1]`.
If you filter on any of those remnant fields then they all go away.
--
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]