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

Jeffrey Hagelberg edited comment on ATLAS-1369 at 12/12/16 11:40 PM:
---------------------------------------------------------------------

It's looking like this is all I'll be able to do for this today.  Please let me 
know if you have any questions.  This is pretty complicated code :-(


was (Author: jnhagelb):
I'll spent a bit more time today see if I can get at least the basic and/or 
expansion working for TP 2.  Maybe we can disable the things that will require 
more investigation for now.

> Optimize Gremlin created by DSL Translator
> ------------------------------------------
>
>                 Key: ATLAS-1369
>                 URL: https://issues.apache.org/jira/browse/ATLAS-1369
>             Project: Atlas
>          Issue Type: Improvement
>            Reporter: Jeffrey Hagelberg
>            Assignee: Jeffrey Hagelberg
>         Attachments: rb54680.patch
>
>
> The way the queries are generated now, in many cases the indices are not used 
> when executing queries.  The main problem is that gremlin cannot currently 
> use the graph indices to optimize the lookup for "has" expressions within an 
> "and" or an "or".  This JIRA introduces a GremlinQueryOptimizer that attempts 
> to extract "has" expressions out of "and" expressions and turn "or" 
> expressions into unions.
> The code being submitted has only been tested with TP 3 at this point.  There 
> are some issues that need to be fixed before this can be used with TP 2:
>    - FunctionGenerator - generates functions that take GraphTraversal as an 
> argument.  That should be changed to GreminPipeline when using TP 2.  The 
> return type should probably come from a new method in GremlinExpressionFactory
>    - loop support - for TP2, we will need to add logic to make sure that the 
> loop call is not separated from the alias it references
>   - alias handling - the alias safe/restore logic in 
> ExpandOrsOptimization.getBaseResultExpression() may be need to adjusted for 
> TP2
>   - possibly other issues, TBD



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to