GitHub user twilmes opened a pull request:
https://github.com/apache/tinkerpop/pull/572
TINKERPOP-1652 Disable PathRetractionStrategy strategy if VertexProgamStep
has LABELLED_PATH requirement
This PR updates `PathRetractionStrategy` to not run if the provided
traversal has `VertexProgramStep` with a `LABELED_PATH` requirement. I created
a custom mock VertexProgram to test this out. I saw a few uses of Mockito
throughout the codebase but seem to remember that not being the preferred
approach but if that is preferable, I can update to use it.
```
[INFO]
------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Apache TinkerPop ................................... SUCCESS [
3.083 s]
[INFO] Apache TinkerPop :: Gremlin Shaded ................. SUCCESS [
2.043 s]
[INFO] Apache TinkerPop :: Gremlin Core ................... SUCCESS [
57.388 s]
[INFO] Apache TinkerPop :: Gremlin Test ................... SUCCESS [
8.661 s]
[INFO] Apache TinkerPop :: Gremlin Groovy ................. SUCCESS [
53.662 s]
[INFO] Apache TinkerPop :: Gremlin Groovy Test ............ SUCCESS [
4.362 s]
[INFO] Apache TinkerPop :: TinkerGraph Gremlin ............ SUCCESS [02:06
min]
[INFO] Apache TinkerPop :: Gremlin Benchmark .............. SUCCESS [
3.511 s]
[INFO] Apache TinkerPop :: Gremlin Driver ................. SUCCESS [
9.088 s]
[INFO] Apache TinkerPop :: Neo4j Gremlin .................. SUCCESS [
2.324 s]
[INFO] Apache TinkerPop :: Gremlin Server ................. SUCCESS [
42.555 s]
[INFO] Apache TinkerPop :: Gremlin Python ................. SUCCESS [
7.699 s]
[INFO] Apache TinkerPop :: Hadoop Gremlin ................. SUCCESS [02:50
min]
[INFO] Apache TinkerPop :: Spark Gremlin .................. SUCCESS [01:03
min]
[INFO] Apache TinkerPop :: Giraph Gremlin ................. SUCCESS [
4.378 s]
[INFO] Apache TinkerPop :: Gremlin Console ................ SUCCESS [
16.988 s]
[INFO] Apache TinkerPop :: Gremlin Archetype .............. SUCCESS [
0.044 s]
[INFO] Apache TinkerPop :: Archetype - TinkerGraph ........ SUCCESS [
4.036 s]
[INFO] Apache TinkerPop :: Archetype - Server ............. SUCCESS [
9.915 s]
[INFO]
------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 09:50 min
[INFO] Finished at: 2017-03-16T09:18:16-05:00
[INFO] Final Memory: 219M/3705M
[INFO]
------------------------------------------------------------------------
```
VOTE: +1
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/tinkerpop TINKERPOP-1652
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/tinkerpop/pull/572.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 #572
----
commit a5e3c4f33642043d2f7c7a473cd4024c956d6f28
Author: Ted Wilmes <[email protected]>
Date: 2017-03-16T14:23:29Z
TINKERPOP-1652 Disable PathRetractionStrategy strategy if VertexProgramStep
has LABELLED_PATH requirement
If traversal has a VertexProgramStep with a LABELED_PATH,
PathRetractionStrategy is not run.
----
---
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.
---