Github user parthchandra commented on a diff in the pull request:

    https://github.com/apache/drill/pull/1038#discussion_r153658073
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/store/ischema/InfoSchemaFilter.java
 ---
    @@ -202,14 +202,19 @@ private Result evaluateHelperFunction(Map<String, 
String> recordValues, Function
             // If at least one arg returns FALSE, then the AND function value 
is FALSE
             // If at least one arg returns INCONCLUSIVE, then the AND function 
value is INCONCLUSIVE
             // If all args return TRUE, then the AND function value is TRUE
    +        Result result = Result.TRUE;
    +
             for(ExprNode arg : exprNode.args) {
               Result exprResult = evaluateHelper(recordValues, arg);
    -          if (exprResult != Result.TRUE) {
    +          if (exprResult == Result.FALSE) {
                 return exprResult;
               }
    +          if (exprResult == Result.INCONCLUSIVE) {
    --- End diff --
    
    Just to be clear. You want to return `Result.INCONCLUSIVE` if any one of 
the expressions is inconclusive  *and* there is no expression that is false.  
Correct ?


---

Reply via email to