Github user paul-rogers commented on a diff in the pull request:

    https://github.com/apache/drill/pull/972#discussion_r143107921
  
    --- Diff: 
contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/JsonConditionBuilder.java
 ---
    @@ -159,73 +159,73 @@ private void setIsCondition(QueryCondition c,
       private JsonScanSpec createJsonScanSpec(FunctionCall call,
           CompareFunctionsProcessor processor) {
         String functionName = processor.getFunctionName();
    -    SchemaPath field = processor.getPath();
    +    String fieldPath = processor.getPath().asPathString(false);
    --- End diff --
    
    This needs an explanation. This is a `String`. The method is 
`asPathString()` which looks like we will take name parts ["a", "b.c", "d"] to 
produce "a.b.c.d". This cannot be right as either 1) it is represents a path to 
be split, or 2) represents a full name to match. But, I might have fields 
["a.b", "c.d"] which also expands to "a.b.c.d". So, the matching part can't be 
right. The path split part can't be right since we cannot recover the name 
parts from the string.
    
    In short, should we path the parsed path (collection of name parts) to the 
functions?
    
    See comments for more info.


---

Reply via email to