You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2019/07/16 22:46:55 UTC
[tinkerpop] branch TINKERPOP-2133 updated (a6ac3c7 -> 77a6e3e)
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a change to branch TINKERPOP-2133
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.
discard a6ac3c7 Merge branch 'pr-1042' into TINKERPOP-2133
omit 3587a1e resolved wildcard import
omit d548507 implemented index lookup for Text predicates
add 8fe711d CTR: Fixed Gremlin Server docker script.
add 60e08a9 Merge branch 'tp34'
add 525e24e TINKERPOP-1553 Deprecate store(String) for aggregate(Scope,String)
add 1750593 Merge branch 'tp34'
add d6966d4 Changed default driver keep-alive to 3 minutes rather than 30 CTR
add 2a337c6 Merge branch 'tp33' into tp34
add 125385e Merge branch 'tp34'
add f627cfc Keep-alive was not always properly disabled when configured to zero CTR
add 199da2e Merge branch 'tp33' into tp34
add 8da09c0 Merge branch 'tp34'
add df91a53 TINKERPOP-2251 Remove deprecated VertexProgram methods.
add dce3e65 Merge pull request #1151 from apache/TINKERPOP-2251
add 060a914 TINKERPOP-2020 Added withComputer() in javascript.
add 2aea5a8 Merge branch 'TINKERPOP-2020' into tp33
add a62dc4f Merge branch 'tp33' into tp34
add 199c910 Merge branch 'tp34'
add 1de184f TINKERPOP-1619 Treat optional() traversal as local child
add ad0e989 Merge branch 'TINKERPOP-1619' into tp33
add 2d6af03 Merge branch 'tp33' into tp34
add 64dd7e5 Merge branch 'tp34'
add b2967ed CTR: removed references to `BulkDumperVertexProgram` from docs.
add 06c5a90 Merge branch 'tp34'
add 582b20b Bumped to latest kerby for kerberos testing CTR
add 4862624 Merge branch 'tp33' into tp34
add c982841 Merge branch 'tp34'
add e23baf7 Expanded server tests to better cover all binary serializers CTR
add 6c755e8 Deprecated some gryo related fields tied to server operations CTR
add 508981c Merge branch 'tp34'
add b207cd3 Moved gryo lite test to parameterization option CTR
add 06601d9 Merge branch 'tp34'
add 5e25548 TINKERPOP-2260 Bump to Jackson Databind 2.9.9.1 CTR
add 4d457b9 Merge branch 'tp33' into tp34
add 55db28c Merge branch 'tp34'
add 607224a TINKERPOP-2185 Upgrade to commons-configuration2
add ed0e19e Merge pull request #1154 from apache/TINKERPOP-2185
add ae25f89 TINKERPOP-2254 Renamed StoreStep and AggregateStep
add 4d570f3 Merge pull request #1155 from apache/TINKERPOP-2254
add 6400d2d Minor javadoc improvements for optimization strategies CTR
add 0a30b73 Merge branch 'tp34'
add c041520 Fixed heading formatting CTR
add b3866f4 Merge branch 'tp33' into tp34
add 4ec2fbb Merge branch 'tp34'
add 43e0a70 Added deprecated javadoc that should have been on 3.4.0 CTR
add 54d174a Merge branch 'tp34'
add f390a5d Removed some internal deprecation.
add 019f9e5 Removed some ignored gremlin-javascript tests.
add eb15413 Merge branch 'tp33' into tp34
add b2ff2ff Merge branch 'tp34'
add 10a69b1 Removed all the ignored GLV tests for .NET
add 85c2175 Merge branch 'tp33' into tp34
add 9ea3664 Merge branch 'tp34'
add ed4ce73 asciidoc fixes - CTR
add 865ad03 Merge branch 'tp33' into tp34
add 565a073 Merge branch 'tp34'
add 50b64e0 asciidoc fixes - CTR
add 16700b2 Merge branch 'tp34'
add 27e40b6 CTR: Added missing Javadoc descriptions and examples to traversal optimization strategies.
add c2d7bd9 Merge branch 'tp34'
add 9e4a4a1 duplicate ids - 'anchor:' is only for creating links to the same place but with a different id
add 8197e29 Merge branch 'tp34'
add 7ec9eb3 Added Configurations to core imports
add 52977a8 asciidoc fixes for configuration2 - CTR
add 9ee679b Fix itty.hasNext() and commit invoking disordering
add 56db1b6 Merge branch 'pr-1159' into tp34
add 0f95e00 Udpate changelog CTR
add 588f7d0 Merge branch 'tp34'
add c7e1962 Fixed conflict dependencies in neo4j after commons-config2 update CTR
new 3a1a956 implemented index lookup for Text predicates
new eb822fb resolved wildcard import
new 77a6e3e TINKERPOP-2133 Add changelog entry
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (a6ac3c7)
\
N -- N -- N refs/heads/TINKERPOP-2133 (77a6e3e)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
CHANGELOG.asciidoc | 20 ++-
docker/gremlin-server.sh | 9 +-
docker/gremlin-server/Dockerfile.template | 5 +-
docker/gremlin-server/docker-entrypoint.sh | 2 +-
docker/scripts/build.sh | 2 +-
docs/src/dev/future/index.asciidoc | 2 +-
docs/src/dev/io/gryo.asciidoc | 2 +-
docs/src/recipes/centrality.asciidoc | 2 +-
docs/src/recipes/collections.asciidoc | 2 +-
docs/src/recipes/olap-spark-yarn.asciidoc | 2 +-
docs/src/reference/gremlin-variants.asciidoc | 16 +--
docs/src/reference/implementations-spark.asciidoc | 3 +-
docs/src/reference/the-graphcomputer.asciidoc | 15 ++-
docs/src/reference/the-traversal.asciidoc | 83 ++++++-------
.../gremlin-language-variants/index.asciidoc | 2 +-
docs/src/tutorials/gremlins-anatomy/index.asciidoc | 2 +-
.../tutorials/the-gremlin-console/index.asciidoc | 4 +-
docs/src/upgrade/release-3.3.x.asciidoc | 16 ++-
docs/src/upgrade/release-3.4.x.asciidoc | 13 ++
docs/src/upgrade/release-3.5.x.asciidoc | 70 ++++++++++-
.../GephiTraversalVisualizationStrategy.groovy | 6 +-
gremlin-core/pom.xml | 8 +-
.../tinkerpop/gremlin/jsr223/CoreImports.java | 29 ++---
.../tinkerpop/gremlin/jsr223/JavaTranslator.java | 4 +-
.../gremlin/process/computer/GraphComputer.java | 2 +-
.../gremlin/process/computer/MapReduce.java | 2 +-
.../gremlin/process/computer/VertexProgram.java | 2 +-
.../connected/ConnectedComponentVertexProgram.java | 6 +-
.../peerpressure/ClusterCountMapReduce.java | 2 +-
.../peerpressure/ClusterPopulationMapReduce.java | 2 +-
.../peerpressure/PeerPressureVertexProgram.java | 19 +--
.../ranking/pagerank/PageRankMapReduce.java | 2 +-
.../ranking/pagerank/PageRankVertexProgram.java | 27 +----
.../search/path/ShortestPathVertexProgram.java | 2 +-
.../computer/traversal/TraversalVertexProgram.java | 2 +-
.../step/map/PageRankVertexProgramStep.java | 34 +-----
.../step/map/PeerPressureVertexProgramStep.java | 32 +----
.../step/map/ProgramVertexProgramStep.java | 4 +-
.../strategy/decoration/VertexProgramStrategy.java | 5 +-
.../util/AbstractVertexProgramBuilder.java | 13 +-
.../process/computer/util/ComputerGraph.java | 2 +-
.../process/computer/util/StaticMapReduce.java | 2 +-
.../process/computer/util/StaticVertexProgram.java | 2 +-
.../process/computer/util/VertexProgramHelper.java | 6 +-
.../gremlin/process/remote/RemoteConnection.java | 2 +-
.../traversal/AnonymousTraversalSource.java | 11 +-
.../gremlin/process/traversal/Traversal.java | 2 +-
.../process/traversal/TraversalStrategy.java | 4 +-
.../traversal/dsl/graph/GraphTraversal.java | 44 +++++--
.../traversal/dsl/graph/GraphTraversalSource.java | 2 -
.../gremlin/process/traversal/dsl/graph/__.java | 9 ++
.../traversal/step/branch/OptionalStep.java | 1 +
.../traversal/step/map/PropertyMapStep.java | 16 +--
...AggregateStep.java => AggregateGlobalStep.java} | 8 +-
.../{StoreStep.java => AggregateLocalStep.java} | 8 +-
.../traversal/strategy/TraversalStrategyProxy.java | 2 +-
.../strategy/decoration/ElementIdStrategy.java | 4 +-
.../decoration/HaltedTraverserStrategy.java | 4 +-
.../strategy/decoration/OptionsStrategy.java | 4 +-
.../strategy/decoration/PartitionStrategy.java | 4 +-
.../strategy/decoration/SubgraphStrategy.java | 4 +-
.../finalization/MatchAlgorithmStrategy.java | 4 +-
.../optimization/AdjacentToIncidentStrategy.java | 6 +-
.../strategy/optimization/EarlyLimitStrategy.java | 6 +-
.../optimization/FilterRankingStrategy.java | 7 +-
.../optimization/IdentityRemovalStrategy.java | 3 +-
.../optimization/IncidentToAdjacentStrategy.java | 9 +-
.../optimization/InlineFilterStrategy.java | 9 +-
.../strategy/optimization/LazyBarrierStrategy.java | 9 ++
.../optimization/MatchPredicateStrategy.java | 6 +-
.../strategy/optimization/OrderLimitStrategy.java | 19 +++
.../optimization/PathProcessorStrategy.java | 7 +-
.../optimization/RepeatUnrollStrategy.java | 13 ++
.../EdgeLabelVerificationStrategy.java | 4 +-
.../process/traversal/util/PureTraversal.java | 2 +-
.../apache/tinkerpop/gremlin/structure/Graph.java | 7 +-
.../io/graphson/TraversalSerializersV2d0.java | 4 +-
.../io/graphson/TraversalSerializersV3d0.java | 4 +-
.../io/gryo/kryoshim/KryoShimService.java | 2 +-
.../io/gryo/kryoshim/KryoShimServiceLoader.java | 6 +-
.../structure/io/util/IoRegistryHelper.java | 2 +-
.../gremlin/structure/util/GraphFactory.java | 45 ++++---
.../gremlin/structure/util/empty/EmptyGraph.java | 2 +-
.../gremlin/structure/util/star/StarGraph.java | 26 +---
.../apache/tinkerpop/gremlin/util/SystemUtil.java | 5 +-
.../gremlin/util/config/YamlConfiguration.java | 127 -------------------
.../gremlin/process/TraversalStrategiesTest.java | 4 +-
.../dsl/graph/GraphTraversalSourceTest.java | 2 +-
...eStepTest.java => AggregateGlobalStepTest.java} | 2 +-
...reStepTest.java => AggregateLocalStepTest.java} | 2 +-
.../gremlin/structure/io/gryo/GryoPoolTest.java | 6 +-
.../gremlin/structure/util/GraphFactoryTest.java | 4 +-
.../tinkerpop/gremlin/util/SystemUtilTest.java | 2 +-
.../gremlin/util/config/YamlConfigurationTest.java | 135 ---------------------
.../Process/Traversal/GraphTraversal.cs | 9 ++
.../src/Gremlin.Net/Process/Traversal/__.cs | 8 ++
.../Gherkin/GherkinTestRunner.cs | 8 +-
.../apache/tinkerpop/gremlin/driver/Cluster.java | 2 +-
.../tinkerpop/gremlin/driver/Connection.java | 2 +-
.../apache/tinkerpop/gremlin/driver/Settings.java | 2 +-
.../driver/remote/DriverRemoteConnection.java | 2 +-
.../driver/remote/DriverRemoteTraversal.java | 2 +-
.../tinkerpop/gremlin/driver/ser/SerTokens.java | 19 ++-
.../tinkerpop/gremlin/driver/ser/Serializers.java | 16 +++
.../driver/ser/binary/types/GraphSerializer.java | 5 +-
.../binary/types/TraversalStrategySerializer.java | 4 +-
.../tinkerpop/gremlin/driver/SettingsTest.java | 4 +-
.../gremlin/groovy/jsr223/GroovyTranslator.java | 4 +-
.../groovy/jsr223/GroovyTranslatorTest.java | 2 +-
.../gremlin/util/TinkerGraphProvider.java | 2 +-
.../glv/GraphTraversalSource.template | 16 ++-
.../lib/process/graph-traversal.js | 16 ++-
.../lib/process/traversal-strategy.js | 28 ++++-
.../lib/structure/io/graph-serializer.js | 2 +
.../lib/structure/io/type-serializers.js | 16 +++
.../test/cucumber/feature-steps.js | 39 +-----
.../gremlin/python/jsr223/JythonTranslator.java | 4 +-
.../gremlin/python/jsr223/PythonTranslator.java | 2 +-
.../gremlin/python/jsr223/PythonProvider.java | 2 +-
gremlin-server/pom.xml | 2 +-
.../gremlin/server/handler/OpSelectorHandler.java | 2 +-
.../gremlin/server/op/AbstractOpProcessor.java | 18 +--
.../server/op/traversal/TraversalOpProcessor.java | 16 +--
.../driver/remote/AbstractRemoteGraphProvider.java | 2 +-
.../server/GremlinResultSetIntegrateTest.java | 119 +++++++++---------
.../gremlin/server/GremlinServerIntegrateTest.java | 4 +-
.../tinkerpop/gremlin/server/KdcFixture.java | 2 +-
.../apache/tinkerpop/gremlin/server/backend.conf | 19 ---
.../gremlin/server/gremlin-console-jaas.conf | 4 +-
.../org/apache/tinkerpop/gremlin/server/kdc.conf | 21 ----
gremlin-shaded/pom.xml | 2 +-
gremlin-test/features/branch/Repeat.feature | 2 +-
gremlin-test/features/map/PageRank.feature | 32 ++---
gremlin-test/features/map/PeerPressure.feature | 24 +---
gremlin-test/features/sideEffect/Aggregate.feature | 88 +++++++++++++-
gremlin-test/features/sideEffect/Group.feature | 2 +-
.../gremlin/AbstractFileGraphProvider.java | 2 +-
.../tinkerpop/gremlin/AbstractGraphProvider.java | 4 +-
.../tinkerpop/gremlin/AbstractGremlinTest.java | 2 +-
.../org/apache/tinkerpop/gremlin/GraphManager.java | 2 +-
.../apache/tinkerpop/gremlin/GraphProvider.java | 17 ++-
.../generator/CommunityGeneratorTest.java | 2 +-
.../generator/DistributionGeneratorTest.java | 2 +-
.../gremlin/process/ProcessComputerSuite.java | 2 -
.../process/computer/GraphComputerTest.java | 6 +-
.../PeerPressureVertexProgramTest.java | 63 ----------
.../process/traversal/step/map/PageRankTest.java | 90 ++++----------
.../traversal/step/map/PeerPressureTest.java | 42 ++-----
.../process/traversal/step/map/ProfileTest.java | 11 +-
.../process/traversal/step/map/ProgramTest.java | 2 +-
.../traversal/step/sideEffect/AggregateTest.java | 118 +++++++++++++++++-
.../traversal/step/sideEffect/SubgraphTest.java | 2 +-
.../decoration/PartitionStrategyProcessTest.java | 2 +-
.../decoration/SubgraphStrategyProcessTest.java | 2 +-
.../gremlin/structure/GraphConstructionTest.java | 2 +-
.../tinkerpop/gremlin/structure/RemoteGraph.java | 7 +-
.../gremlin/structure/TransactionTest.java | 2 +-
.../gremlin/structure/io/IoCustomTest.java | 2 +-
.../gremlin/structure/io/IoGraphTest.java | 2 +-
.../tinkerpop/gremlin/structure/io/IoTest.java | 2 +-
.../gremlin/structure/util/star/StarGraphTest.java | 2 +-
.../tinkerpop/gremlin/structure/io/Model.java | 4 +-
hadoop-gremlin/pom.xml | 11 +-
.../hadoop/process/computer/HadoopCombine.java | 2 +-
.../gremlin/hadoop/process/computer/HadoopMap.java | 2 +-
.../hadoop/process/computer/HadoopReduce.java | 2 +-
.../process/computer/util/MapReduceHelper.java | 3 +-
.../hadoop/structure/HadoopConfiguration.java | 33 +++--
.../gremlin/hadoop/structure/HadoopGraph.java | 11 +-
.../hadoop/structure/io/FileSystemStorage.java | 4 +-
.../hadoop/structure/io/GraphFilterAware.java | 2 +-
.../hadoop/structure/io/HadoopPoolShimService.java | 2 +-
.../gremlin/hadoop/structure/io/HadoopPools.java | 4 +-
.../hadoop/structure/io/InputOutputHelper.java | 4 +-
.../structure/io/ObjectWritableComparator.java | 4 +-
.../gremlin/hadoop/structure/util/ConfUtil.java | 9 +-
neo4j-gremlin/pom.xml | 10 ++
.../gremlin/neo4j/structure/Neo4jGraph.java | 6 +-
.../gremlin/neo4j/AbstractNeo4jGraphProvider.java | 2 +-
pom.xml | 20 ++-
.../spark/process/computer/SparkExecutor.java | 2 +-
.../spark/process/computer/SparkGraphComputer.java | 12 +-
.../tinkerpop/gremlin/spark/structure/Spark.java | 2 +-
.../gremlin/spark/structure/io/InputFormatRDD.java | 2 +-
.../spark/structure/io/InputOutputHelper.java | 4 +-
.../gremlin/spark/structure/io/InputRDD.java | 2 +-
.../spark/structure/io/OutputFormatRDD.java | 2 +-
.../gremlin/spark/structure/io/OutputRDD.java | 2 +-
.../spark/structure/io/PersistedInputRDD.java | 2 +-
.../spark/structure/io/PersistedOutputRDD.java | 2 +-
.../spark/structure/io/SparkContextStorage.java | 4 +-
.../spark/structure/io/gryo/GryoSerializer.java | 5 +-
.../kryoshim/unshaded/UnshadedKryoShimService.java | 2 +-
.../tinkerpop/gremlin/spark/AbstractSparkTest.java | 5 +-
.../spark/process/computer/LocalPropertyTest.java | 4 +-
.../optimization/SparkInterceptorStrategyTest.java | 2 +-
.../SparkSingleIterationStrategyTest.java | 2 +-
.../gremlin/spark/structure/SparkTest.java | 4 +-
.../spark/structure/io/ExampleInputRDD.java | 2 +-
.../spark/structure/io/ExampleOutputRDD.java | 2 +-
.../spark/structure/io/InputOutputRDDTest.java | 4 +-
.../gremlin/spark/structure/io/InputRDDTest.java | 4 +-
.../gremlin/spark/structure/io/OutputRDDTest.java | 4 +-
.../io/PersistedInputOutputRDDIntegrateTest.java | 2 +-
.../spark/structure/io/ToyGraphInputRDD.java | 2 +-
.../io/gryo/GryoSerializerIntegrateTest.java | 2 +-
.../optimization/TinkerGraphCountStrategy.java | 5 +-
.../tinkergraph/structure/TinkerFactory.java | 4 +-
.../gremlin/tinkergraph/structure/TinkerGraph.java | 4 +-
.../structure/TinkerIoRegistryV1d0.java | 4 +-
.../structure/TinkerIoRegistryV2d0.java | 4 +-
.../structure/TinkerIoRegistryV3d0.java | 4 +-
.../gremlin/tinkergraph/TinkerGraphProvider.java | 2 +-
.../process/TinkerGraphComputerProvider.java | 2 +-
.../decoration/HaltedTraverserStrategyTest.java | 2 +-
.../structure/TinkerGraphIdManagerTest.java | 4 +-
.../tinkergraph/structure/TinkerGraphTest.java | 21 +++-
...tractTinkerGraphGraphSONTranslatorProvider.java | 4 +
218 files changed, 1122 insertions(+), 1227 deletions(-)
rename gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/{AggregateStep.java => AggregateGlobalStep.java} (93%)
rename gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/{StoreStep.java => AggregateLocalStep.java} (91%)
delete mode 100644 gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/config/YamlConfiguration.java
rename gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/{AggregateStepTest.java => AggregateGlobalStepTest.java} (96%)
rename gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/{StoreStepTest.java => AggregateLocalStepTest.java} (96%)
delete mode 100644 gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/util/config/YamlConfigurationTest.java
delete mode 100644 gremlin-server/src/test/resources/org/apache/tinkerpop/gremlin/server/backend.conf
delete mode 100644 gremlin-server/src/test/resources/org/apache/tinkerpop/gremlin/server/kdc.conf
delete mode 100644 gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/clustering/peerpressure/PeerPressureVertexProgramTest.java
[tinkerpop] 03/03: TINKERPOP-2133 Add changelog entry
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch TINKERPOP-2133
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 77a6e3ec6f0fd70795b0ea949611fedda0b1503e
Author: Stephen Mallette <sp...@genoprime.com>
AuthorDate: Tue Jul 16 18:45:51 2019 -0400
TINKERPOP-2133 Add changelog entry
---
CHANGELOG.asciidoc | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index a6f07cc..64677e4 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -33,10 +33,11 @@ This release also includes changes from <<release-3-4-3, 3.4.3>>.
* Removed previously deprecated `VertexProgram` related infrastructure.
* Removed previously deprecated SSL settings: `keyCertChainFile`, `keyFile`, `keyPassword` and `trustCertChainFile` and related infrastructure.
* Removed previously deprecated `PropertyMapStep` constructor and `isIncludeTokens`.
-* Removed previously dperecated `StarGraph.builder()` and `StarGraph.Builder.create()`.
+* Removed previously deprecated `StarGraph.builder()` and `StarGraph.Builder.create()`.
* Removed previously deprecated `AbstractOpProcessor.generateMetaData(ChannelHandlerContext, RequestMessage, ResponseStatusCode, Iterator)`
* Removed previously deprecated `BulkDumperVertexProgram` and `BulkLoaderVertexProgram`.
-* Upgrade to Neo4j 3.4.11
+* Added support for `TextP` in Neo4j using its string search functions.
+* Upgrade to Neo4j 3.4.11.
== TinkerPop 3.4.0 (Avant-Gremlin Construction #3 for Theremin and Flowers)
[tinkerpop] 02/03: resolved wildcard import
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch TINKERPOP-2133
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit eb822fb24d352222039776f6cd73284f606f95fc
Author: Andrey Skorikov <an...@codecentric.de>
AuthorDate: Fri Jan 18 14:37:07 2019 +0100
resolved wildcard import
---
.../gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
index ea893ac..d36418b 100644
--- a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
+++ b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
@@ -32,7 +32,11 @@ import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
import org.apache.tinkerpop.gremlin.structure.util.ElementHelper;
import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
-import org.neo4j.tinkerpop.api.*;
+import org.neo4j.tinkerpop.api.Neo4jDirection;
+import org.neo4j.tinkerpop.api.Neo4jGraphAPI;
+import org.neo4j.tinkerpop.api.Neo4jNode;
+import org.neo4j.tinkerpop.api.Neo4jRelationship;
+import org.neo4j.tinkerpop.api.Neo4jStringSearchMode;
import java.util.Iterator;
import java.util.List;
[tinkerpop] 01/03: implemented index lookup for Text predicates
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch TINKERPOP-2133
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 3a1a956af0996e543003b9f371fb1bef7ef61c25
Author: Andrey Skorikov <an...@codecentric.de>
AuthorDate: Wed Jan 16 13:00:33 2019 +0100
implemented index lookup for Text predicates
---
.../structure/trait/NoMultiNoMetaNeo4jTrait.java | 27 +++++++++++++++++-----
1 file changed, 21 insertions(+), 6 deletions(-)
diff --git a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
index 6698887..ea893ac 100644
--- a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
+++ b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/structure/trait/NoMultiNoMetaNeo4jTrait.java
@@ -24,6 +24,7 @@ import org.apache.tinkerpop.gremlin.neo4j.structure.Neo4jHelper;
import org.apache.tinkerpop.gremlin.neo4j.structure.Neo4jVertex;
import org.apache.tinkerpop.gremlin.neo4j.structure.Neo4jVertexProperty;
import org.apache.tinkerpop.gremlin.process.traversal.Compare;
+import org.apache.tinkerpop.gremlin.process.traversal.Text;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer;
import org.apache.tinkerpop.gremlin.structure.Property;
import org.apache.tinkerpop.gremlin.structure.T;
@@ -31,13 +32,12 @@ import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
import org.apache.tinkerpop.gremlin.structure.util.ElementHelper;
import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
-import org.neo4j.tinkerpop.api.Neo4jDirection;
-import org.neo4j.tinkerpop.api.Neo4jNode;
-import org.neo4j.tinkerpop.api.Neo4jRelationship;
+import org.neo4j.tinkerpop.api.*;
import java.util.Iterator;
import java.util.List;
import java.util.Optional;
+import java.util.function.BiPredicate;
import java.util.function.Predicate;
/**
@@ -168,10 +168,25 @@ public final class NoMultiNoMetaNeo4jTrait implements Neo4jTrait {
if (label.isPresent()) {
// find a vertex by label and key/value
+ String labelValue = label.get();
+ Neo4jGraphAPI baseGraph = graph.getBaseGraph();
for (final HasContainer hasContainer : hasContainers) {
- if (Compare.eq == hasContainer.getBiPredicate() && !hasContainer.getKey().equals(T.label.getAccessor())) {
- if (graph.getBaseGraph().hasSchemaIndex(label.get(), hasContainer.getKey())) {
- return IteratorUtils.stream(graph.getBaseGraph().findNodes(label.get(), hasContainer.getKey(), hasContainer.getValue()))
+ String key = hasContainer.getKey();
+ Object value = hasContainer.getValue();
+ if (!key.equals(T.label.getAccessor()) && baseGraph.hasSchemaIndex(labelValue, key)) {
+ BiPredicate<?, ?> predicate = hasContainer.getBiPredicate();
+ Iterable<Neo4jNode> nodes = null;
+ if (Compare.eq == predicate) {
+ nodes = baseGraph.findNodes(labelValue, key, value);
+ } else if (Text.containing == predicate) {
+ nodes = baseGraph.findNodes(labelValue, key, value.toString(), Neo4jStringSearchMode.CONTAINS);
+ } else if (Text.startingWith == predicate) {
+ nodes = baseGraph.findNodes(labelValue, key, value.toString(), Neo4jStringSearchMode.PREFIX);
+ } else if (Text.endingWith == predicate) {
+ nodes = baseGraph.findNodes(labelValue, key, value.toString(), Neo4jStringSearchMode.SUFFIX);
+ }
+ if (nodes != null) {
+ return IteratorUtils.stream(nodes)
.map(node -> (Vertex) new Neo4jVertex(node, graph))
.filter(vertex -> HasContainer.testAll(vertex, hasContainers)).iterator();
}