[ 
https://issues.apache.org/jira/browse/DRILL-5838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16194120#comment-16194120
 ] 

ASF GitHub Bot commented on DRILL-5838:
---------------------------------------

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.


> Fix MaprDB filter pushdown for the case of nested field (reg. of DRILL-4264)
> ----------------------------------------------------------------------------
>
>                 Key: DRILL-5838
>                 URL: https://issues.apache.org/jira/browse/DRILL-5838
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - MapRDB
>    Affects Versions: 1.11.0
>            Reporter: Volodymyr Vysotskyi
>            Assignee: Volodymyr Vysotskyi
>
> After the changes in DRILL-4264, filter for MaprDB tables operate only with 
> root field name, but {{MaprDBJsonRecordReader}} expects to use condition with 
> full field path. In MaprDB classes compares the results of calling 
> {{org.ojai.FieldPath.asPathString()}} method for the fields from project list 
> and from filter list. 
> So current code works only for cases when compares root fields, but not 
> nested.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to