Github user okram commented on the issue:

    https://github.com/apache/tinkerpop/pull/417
  
    @spmallette I updated `traversal-induced-values.asciidoc`. Wow -- 
`where().by()` is super powerful. That nested `where(select())`-clause you had 
in there was naaaasty. 
    
    Given how much easier some things are to express, I'm realizing that people 
will be wanting to use `where().by()`  more often than not and given that 
`where().by()` is a `PathProcessor` now, OLAP will not allow any `by()` beyond 
the element id! Eek. No fear, we have `PathProcessorStrategy` that knows how to 
"flatten" `select().by()` accordingly. With that, I think another ticket should 
provide two things:
    
    1. `PathProcessorStrategy` should be updated to support `where().by()` 
flattening.
    2. Create a new strategy called `WhereByMatchStrategy` which turns 
`where().by()` patterns into `match()`-steps. (@dkuppitz's idea)
    
    Now, if (1) above happens then (2) above won't do anything. Why would (1) 
happen, but not (2). The complexity of the `where()`-step's `by()`-clause. If 
the `by()` clause is within the bounds of the local star graph, then (1) will 
trigger. Else, it won't and (2) would trigger.  Next, we will have to see how 
these two strategies interact with `MatchPredicateStrategy` as this folds 
`where()`-clauses into `match()` to get the runtime optimizer benefits... Its 
all very complex :D 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to