GitHub user okram opened a pull request:

    https://github.com/apache/tinkerpop/pull/445

    TINKERPOP-1470: InlineFilterStrategy should try and P.or() has() children 
in OrSteps.

    https://issues.apache.org/jira/browse/TINKERPOP-1470
    
    Added `InlineFilterStrategy` support for:
    
    ```
    OrStep[HasStep(x,p1),HasStep(y,p2)]
    ```
    
    to be rewritten as:
    
    ```
    HasStep(x,p1.or(p2)))
    ```
    
    While doing this, I found a bug in `ConnectiveP` around nesting predicates 
that should be inlined. I added upgrade notes about `ConnectiveP` as well as 
about hidden step labels (forgot to add this from a previous ticket).
    
    Also, I added this ticket as future work: 
https://issues.apache.org/jira/browse/TINKERPOP-1482
    
    VOTE +1

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/tinkerpop TINKERPOP-1470

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/tinkerpop/pull/445.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #445
    
----
commit 6da9151ef19c998688b78309e69fddb274ddf9d6
Author: Marko A. Rodriguez <okramma...@gmail.com>
Date:   2016-09-29T16:39:20Z

    Added support for or(has(x),has(y)) to be has(x.or(y)) in 
InlineFilterStrategy. While doing this, I found a bug in ConnectiveP steps 
where nested equivalents were not being inlined. That bug has been fixed. Added 
test cases to PTest to demonstrate proper inlining and nesting of ConnectivePs. 
I left two TODOs. One regarding match()-pulls that are labeled (interfering 
with FilterRankStrategy) and one regarding, has(x).has(y) being turned into 
has(x.and(y)). The reason why the latter isn't done now as it may greatly mess 
up providers who just rely on eq() for index lookups and are not smart enough 
to look into and()/or() predicates.

----


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to