[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144719670 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be +configured differently. This recipe describes this configuration. + +Approach + + +Most configuration problems of TinkerPop with Spark on Yarn stem from three reasons: + +1. `SparkGraphComputer` creates its own `SparkContext` so it does not get any configs from the usual `spark-submit` command. +2. The TinkerPop Spark plugin did not include Spark on Yarn runtime dependencies until version 3.2.7/3.3.1. +3. Resolving reason 2 by adding the cluster's `spark-assembly` jar to the classpath creates a host of version +conflicts, because Spark 1.x dependency versions have remained frozen since 2014. + +The current recipe follows a minimalist approach in which no dependencies are added to the dependencies +included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This +approach minimizes the chance of dependency version conflicts. + +Prerequisites +~ +This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained +for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions +from various vendors. + +If you want to try the recipe on a local Hadoop pseudo-cluster, the easiest way to install +it is to look at the install script at https://github.com/apache/tinkerpop/blob/x.y.z/docker/hadoop/install.sh +and the `start hadoop` section of https://github.com/apache/tinkerpop/blob/x.y.z/docker/scripts/build.sh. + +This recipe assumes that you installed the gremlin console with the +http://tinkerpop.apache.org/docs/x.y.z/reference/#spark-plugin[spark plugin] (the +http://tinkerpop.apache.org/docs/x.y.z/reference/#hadoop-plugin[hadoop plugin] is optional). Your Hadoop cluster +may have been configured to use file compression, e.g. lzo compression. If so, you need to copy the relevant +jar (e.g. `hadoop-lzo-*.jar`) to gremlin console's `ext/spark-gremlin/lib` folder. + +For starting the gremlin console in the right environment, create a shell script (e.g. `bin/spark-yarn.sh`) with the +contents below. Of course, actual values for `GREMLIN_HOME`, `HADOOP_HOME` and `HADOOP_CONF_DIR` need to be adapted to +your particular environment. + +[source] + +#!/bin/bash +# Variables to be adapted to the actual environment +GREMLIN_HOME=/home/yourdir/lib/apache-tinkerpop-gremlin-console-x.y.z-standalone +export HADOOP_HOME=/usr/local/lib/hadoop-2.7.2 +export HADOOP_CONF_DIR=/usr/local/lib/hadoop-2.7.2/etc/hadoop + +# Have TinkerPop find the hadoop cluster configs and hadoop native libraries +export CLASSPATH=$HADOOP_CONF_DIR +export JAVA_OPTIONS="-Djava.library.path=$HADOOP_HOME/lib/native:$HADOOP_HOME/lib/native/Linux-amd64-64" + +# Start gremlin-console without getting the HADOOP_GREMLIN_LIBS warning +cd $GREMLIN_HOME +[ ! -e empty ] && mkdir empty +export H
[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144719827 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be +configured differently. This recipe describes this configuration. + +Approach + + +Most configuration problems of TinkerPop with Spark on Yarn stem from three reasons: + +1. `SparkGraphComputer` creates its own `SparkContext` so it does not get any configs from the usual `spark-submit` command. +2. The TinkerPop Spark plugin did not include Spark on Yarn runtime dependencies until version 3.2.7/3.3.1. +3. Resolving reason 2 by adding the cluster's `spark-assembly` jar to the classpath creates a host of version +conflicts, because Spark 1.x dependency versions have remained frozen since 2014. + +The current recipe follows a minimalist approach in which no dependencies are added to the dependencies +included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This +approach minimizes the chance of dependency version conflicts. + +Prerequisites +~ +This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained +for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions +from various vendors. + +If you want to try the recipe on a local Hadoop pseudo-cluster, the easiest way to install +it is to look at the install script at https://github.com/apache/tinkerpop/blob/x.y.z/docker/hadoop/install.sh +and the `start hadoop` section of https://github.com/apache/tinkerpop/blob/x.y.z/docker/scripts/build.sh. + +This recipe assumes that you installed the gremlin console with the +http://tinkerpop.apache.org/docs/x.y.z/reference/#spark-plugin[spark plugin] (the +http://tinkerpop.apache.org/docs/x.y.z/reference/#hadoop-plugin[hadoop plugin] is optional). Your Hadoop cluster +may have been configured to use file compression, e.g. lzo compression. If so, you need to copy the relevant +jar (e.g. `hadoop-lzo-*.jar`) to gremlin console's `ext/spark-gremlin/lib` folder. + +For starting the gremlin console in the right environment, create a shell script (e.g. `bin/spark-yarn.sh`) with the +contents below. Of course, actual values for `GREMLIN_HOME`, `HADOOP_HOME` and `HADOOP_CONF_DIR` need to be adapted to +your particular environment. + +[source] + +#!/bin/bash +# Variables to be adapted to the actual environment +GREMLIN_HOME=/home/yourdir/lib/apache-tinkerpop-gremlin-console-x.y.z-standalone +export HADOOP_HOME=/usr/local/lib/hadoop-2.7.2 +export HADOOP_CONF_DIR=/usr/local/lib/hadoop-2.7.2/etc/hadoop + +# Have TinkerPop find the hadoop cluster configs and hadoop native libraries +export CLASSPATH=$HADOOP_CONF_DIR +export JAVA_OPTIONS="-Djava.library.path=$HADOOP_HOME/lib/native:$HADOOP_HOME/lib/native/Linux-amd64-64" + +# Start gremlin-console without getting the HADOOP_GREMLIN_LIBS warning +cd $GREMLIN_HOME +[ ! -e empty ] && mkdir empty +export H
[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144653328 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be --- End diff -- capitalize YARN throughout the doc ---
[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144719566 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be +configured differently. This recipe describes this configuration. + +Approach + + +Most configuration problems of TinkerPop with Spark on Yarn stem from three reasons: + +1. `SparkGraphComputer` creates its own `SparkContext` so it does not get any configs from the usual `spark-submit` command. +2. The TinkerPop Spark plugin did not include Spark on Yarn runtime dependencies until version 3.2.7/3.3.1. +3. Resolving reason 2 by adding the cluster's `spark-assembly` jar to the classpath creates a host of version +conflicts, because Spark 1.x dependency versions have remained frozen since 2014. + +The current recipe follows a minimalist approach in which no dependencies are added to the dependencies +included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This +approach minimizes the chance of dependency version conflicts. + +Prerequisites +~ +This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained +for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions +from various vendors. + +If you want to try the recipe on a local Hadoop pseudo-cluster, the easiest way to install +it is to look at the install script at https://github.com/apache/tinkerpop/blob/x.y.z/docker/hadoop/install.sh +and the `start hadoop` section of https://github.com/apache/tinkerpop/blob/x.y.z/docker/scripts/build.sh. + +This recipe assumes that you installed the gremlin console with the +http://tinkerpop.apache.org/docs/x.y.z/reference/#spark-plugin[spark plugin] (the +http://tinkerpop.apache.org/docs/x.y.z/reference/#hadoop-plugin[hadoop plugin] is optional). Your Hadoop cluster +may have been configured to use file compression, e.g. lzo compression. If so, you need to copy the relevant --- End diff -- capitalize LZO ---
[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144653511 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be +configured differently. This recipe describes this configuration. + +Approach + + +Most configuration problems of TinkerPop with Spark on Yarn stem from three reasons: + +1. `SparkGraphComputer` creates its own `SparkContext` so it does not get any configs from the usual `spark-submit` command. +2. The TinkerPop Spark plugin did not include Spark on Yarn runtime dependencies until version 3.2.7/3.3.1. +3. Resolving reason 2 by adding the cluster's `spark-assembly` jar to the classpath creates a host of version +conflicts, because Spark 1.x dependency versions have remained frozen since 2014. + +The current recipe follows a minimalist approach in which no dependencies are added to the dependencies +included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This +approach minimizes the chance of dependency version conflicts. + +Prerequisites +~ +This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained +for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions +from various vendors. + +If you want to try the recipe on a local Hadoop pseudo-cluster, the easiest way to install +it is to look at the install script at https://github.com/apache/tinkerpop/blob/x.y.z/docker/hadoop/install.sh +and the `start hadoop` section of https://github.com/apache/tinkerpop/blob/x.y.z/docker/scripts/build.sh. + +This recipe assumes that you installed the gremlin console with the +http://tinkerpop.apache.org/docs/x.y.z/reference/#spark-plugin[spark plugin] (the +http://tinkerpop.apache.org/docs/x.y.z/reference/#hadoop-plugin[hadoop plugin] is optional). Your Hadoop cluster +may have been configured to use file compression, e.g. lzo compression. If so, you need to copy the relevant +jar (e.g. `hadoop-lzo-*.jar`) to gremlin console's `ext/spark-gremlin/lib` folder. + +For starting the gremlin console in the right environment, create a shell script (e.g. `bin/spark-yarn.sh`) with the --- End diff -- capitalize Gremlin Console throughout the doc ---
[GitHub] tinkerpop pull request #721: TINKERPOP-1786 Recipe and missing manifest item...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/721#discussion_r144655107 --- Diff: docs/src/recipes/olap-spark-yarn.asciidoc --- @@ -0,0 +1,153 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[olap-spark-yarn]] +OLAP traversals with Spark on Yarn +-- + +TinkerPop's combination of http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[SparkGraphComputer] +and http://tinkerpop.apache.org/docs/current/reference/#_properties_files[HadoopGraph] allows for running +distributed, analytical graph queries (OLAP) on a computer cluster. The +http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer[reference documentation] covers the cases +where Spark runs locally or where the cluster is managed by a Spark server. However, many users can only run OLAP jobs +via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (Yarn), which requires `SparkGraphComputer` to be +configured differently. This recipe describes this configuration. + +Approach + + +Most configuration problems of TinkerPop with Spark on Yarn stem from three reasons: + +1. `SparkGraphComputer` creates its own `SparkContext` so it does not get any configs from the usual `spark-submit` command. +2. The TinkerPop Spark plugin did not include Spark on Yarn runtime dependencies until version 3.2.7/3.3.1. +3. Resolving reason 2 by adding the cluster's `spark-assembly` jar to the classpath creates a host of version +conflicts, because Spark 1.x dependency versions have remained frozen since 2014. + +The current recipe follows a minimalist approach in which no dependencies are added to the dependencies +included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This +approach minimizes the chance of dependency version conflicts. + +Prerequisites +~ +This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained +for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions +from various vendors. + +If you want to try the recipe on a local Hadoop pseudo-cluster, the easiest way to install +it is to look at the install script at https://github.com/apache/tinkerpop/blob/x.y.z/docker/hadoop/install.sh +and the `start hadoop` section of https://github.com/apache/tinkerpop/blob/x.y.z/docker/scripts/build.sh. + +This recipe assumes that you installed the gremlin console with the +http://tinkerpop.apache.org/docs/x.y.z/reference/#spark-plugin[spark plugin] (the +http://tinkerpop.apache.org/docs/x.y.z/reference/#hadoop-plugin[hadoop plugin] is optional). Your Hadoop cluster +may have been configured to use file compression, e.g. lzo compression. If so, you need to copy the relevant +jar (e.g. `hadoop-lzo-*.jar`) to gremlin console's `ext/spark-gremlin/lib` folder. + +For starting the gremlin console in the right environment, create a shell script (e.g. `bin/spark-yarn.sh`) with the +contents below. Of course, actual values for `GREMLIN_HOME`, `HADOOP_HOME` and `HADOOP_CONF_DIR` need to be adapted to +your particular environment. + +[source] + +#!/bin/bash +# Variables to be adapted to the actual environment +GREMLIN_HOME=/home/yourdir/lib/apache-tinkerpop-gremlin-console-x.y.z-standalone +export HADOOP_HOME=/usr/local/lib/hadoop-2.7.2 +export HADOOP_CONF_DIR=/usr/local/lib/hadoop-2.7.2/etc/hadoop + +# Have TinkerPop find the hadoop cluster configs and hadoop native libraries +export CLASSPATH=$HADOOP_CONF_DIR +export JAVA_OPTIONS="-Djava.library.path=$HADOOP_HOME/lib/native:$HADOOP_HOME/lib/native/Linux-amd64-64" + +# Start gremlin-console without getting the HADOOP_GREMLIN_LIBS warning +cd $GREMLIN_HOME +[ ! -e empty ] && mkdir empty +export H
[GitHub] tinkerpop issue #597: TINKERPOP-1666 YAML file supplied to FileSandboxExtens...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/597 Docker build with `docker/build.sh -t -n -i` was successful. Code and unit tests look fine. VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #603: Fix WebSocket documentation
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/603 You can [CTR this](http://tinkerpop.apache.org/docs/3.2.4/dev/developer/#rtc) --- 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. ---
[GitHub] tinkerpop issue #569: TINKERPOP-1438: GraphManager becomes a customizable in...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/569 deferring the merge to you @spmallette since you had taken the lead on the review, but i'm happy to handle it --- 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. ---
[GitHub] tinkerpop issue #569: TINKERPOP-1438: GraphManager becomes a customizable in...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/569 @spmallette isn't a bot ;) --- 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. ---
[GitHub] tinkerpop issue #596: TINKERPOP-1443 API Checker
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/596 VOTE: +1 --- 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. ---
[GitHub] tinkerpop pull request #596: TINKERPOP-1443 API Checker
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/596#discussion_r110670226 --- Diff: .travis.yml --- @@ -5,6 +5,18 @@ jdk: - oraclejdk8 sudo: required dist: trusty +cache: + directories: +- $HOME/mvn-home + +install: + # install maven 3.3.9 if it is not in cache already --- End diff -- right, consistency and built-in testing for the stated minimum Maven level. probably no big deal either way. --- 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. ---
[GitHub] tinkerpop pull request #596: TINKERPOP-1443 API Checker
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/596#discussion_r110667764 --- Diff: .travis.yml --- @@ -5,6 +5,18 @@ jdk: - oraclejdk8 sudo: required dist: trusty +cache: + directories: +- $HOME/mvn-home + +install: + # install maven 3.3.9 if it is not in cache already --- End diff -- then shouldn't Travis use 3.2.5? --- 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. ---
[GitHub] tinkerpop pull request #596: TINKERPOP-1443 API Checker
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/596#discussion_r110478292 --- Diff: .travis.yml --- @@ -5,6 +5,18 @@ jdk: - oraclejdk8 sudo: required dist: trusty +cache: + directories: +- $HOME/mvn-home + +install: + # install maven 3.3.9 if it is not in cache already --- End diff -- Need an update on the Maven version to 3.3.9 in [`development-environment.asciidoc`](https://github.com/apache/tinkerpop/blob/master/docs/src/dev/developer/development-environment.asciidoc#system-configuration). Would be good to add `requireMavenVersion` to the [`pom.xml`](https://github.com/apache/tinkerpop/blob/master/pom.xml#L178) also. --- 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. ---
[GitHub] tinkerpop pull request #595: TINKERPOP-1608 XSLT for converting GraphSON
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/595#discussion_r110463999 --- Diff: gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/IoTest.java --- @@ -286,6 +289,34 @@ public void shouldReadWriteSelfLoopingEdges() throws Exception { assertEquals(IteratorUtils.count(source.vertices()), IteratorUtils.count(target.vertices())); assertEquals(IteratorUtils.count(source.edges()), IteratorUtils.count(target.edges())); } + +@Test +@FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) +@FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_STRING_VALUES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_FLOAT_VALUES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_BOOLEAN_VALUES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_LONG_VALUES) +@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_DOUBLE_VALUES) --- End diff -- only need `String` and `Integer` vertex properties. --- 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. ---
[GitHub] tinkerpop pull request #595: TINKERPOP-1608 XSLT for converting GraphSON
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/595#discussion_r110464956 --- Diff: docs/src/reference/the-graph.asciidoc --- @@ -444,6 +444,32 @@ try (final InputStream stream = new FileInputStream("tinkerpop-modern.xml")) { } +GraphML was a supported format in TinkerPop 2.x, but there were several issues that made it inconsistent with the +specification that were corrected for 3.x. As a result, attempting to read a GraphML file generated by 2.x with the +3.x `GraphMLReader` will result in error. To help with this problem, an XSLT file is provided as a resource in +`gremlin-core` which will transform 2.x GraphML to 3.x GraphML. It can be used as follows: + +[source,java] --- End diff -- If this doc is Java rather than Groovy, the syntax needs to be tidied up a bit with semicolons and double quoted strings. --- 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. ---
[GitHub] tinkerpop issue #592: TINKERPOP-1010 Remove deprecated methods around Gremli...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/592 Successful build with `docker/build.sh -t -i -n`. Doc updates look good. VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #583: TINKERPOP-1657 Provide abstraction to easily allow dif...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/583 Did a successful `docker/build.sh -t -i -n`. Reviewed the code, docs, and test case. Solid PR @krlohnes VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #569: TINKERPOP-1438: GraphManager becomes a customizable in...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/569 Using the GitHub review seems to have made my vote disappear... Successful `docker/build.sh -t -i -n`. Verified docs and javadocs. Solid work on this @dpitera. VOTE: +1 --- 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. ---
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r109934781 --- Diff: docs/src/reference/gremlin-applications.asciidoc --- @@ -1075,6 +1075,7 @@ The following table describes the various configuration options that Gremlin Ser |authentication.className |The fully qualified classname of an `Authenticator` implementation to use. If this setting is not present, then authentication is effectively disabled. |`AllowAllAuthenticator` |authentication.config |A `Map` of configuration settings to be passes to the `Authenticator` when it is constructed. The settings available are dependent on the implementation. |_none_ |channelizer |The fully qualified classname of the `Channelizer` implementation to use. A `Channelizer` is a "channel initializer" which Gremlin Server uses to define the type of processing pipeline to use. By allowing different `Channelizer` implementations, Gremlin Server can support different communication protocols (e.g. Websockets, Java NIO, etc.). |`WebSocketChannelizer` +|graphManager |The fully qualified classname of the `GraphManager` implementation to use. A `GraphManager` is a class that adheres to the Tinkerpop `GraphManager` interface, allowing custom implementations for storing and managing graph references, as well as defining custom methods to open and close graphs instantiations. It is important to note that the Tinkerpop Http and WebSocketChannelizers auto-commit and auto-rollback based on the graphs stored in the graphManager upon script execution completion. |`DefaultGraphManager` --- End diff -- TinkerPop -- can fix case on commit --- 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. ---
[GitHub] tinkerpop issue #579: TINKERPOP-1654 Bumped to Jackson 2.8.7
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/579 Did a build with `mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false` and Docker build with tests on `tp32`. Looks fine. VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #573: TINKERPOP-1303 Adds help option to :remote config comm...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/573 Thanks for handling this one, @spmallette. LGTM. VOTE: +1 --- 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. ---
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r106467302 --- Diff: gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java --- @@ -0,0 +1,216 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tinkerpop.gremlin.server.util; + +import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource; +import org.apache.tinkerpop.gremlin.server.GraphManager; +import org.apache.tinkerpop.gremlin.server.GremlinServer; +import org.apache.tinkerpop.gremlin.server.Settings; +import org.apache.tinkerpop.gremlin.structure.Graph; +import org.apache.tinkerpop.gremlin.structure.Transaction; +import org.apache.tinkerpop.gremlin.structure.util.GraphFactory; +import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.script.Bindings; +import javax.script.SimpleBindings; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Predicate; +import java.util.function.Supplier; + +/** + * Holder for {@link Graph} and {@link TraversalSource} instances configured for the server to be passed to script + * engine bindings. The {@link Graph} instances are read from the {@link Settings} for Gremlin Server as defined in + * the configuration file. The {@link TraversalSource} instances are rebound to the {@code GraphManager} once + * initialization scripts construct them. + */ +public final class DefaultGraphManager implements GraphManager { +private static final Logger logger = LoggerFactory.getLogger(GremlinServer.class); + +private final Map graphs = new ConcurrentHashMap<>(); +private final Map traversalSources = new ConcurrentHashMap<>(); + +/** + * Create a new instance using the {@link Settings} from Gremlin Server. + */ +public DefaultGraphManager(final Settings settings) { +settings.graphs.entrySet().forEach(e -> { +try { +final Graph newGraph = GraphFactory.open(e.getValue()); +graphs.put(e.getKey(), newGraph); +logger.info("Graph [{}] was successfully configured via [{}].", e.getKey(), e.getValue()); +} catch (RuntimeException re) { +logger.warn(String.format("Graph [%s] configured at [%s] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: %s", +e.getKey(), e.getValue(), re.getMessage()), re); +if (re.getCause() != null) logger.debug("GraphFactory exception", re.getCause()); +} +}); +} + +/** + * Get a list of the {@link Graph} instances and their binding names as defined in the Gremlin Server + * configuration file. + * + * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself + */ +public final Map getGraphs() { +return graphs; +} + +public final Graph getGraph(final String gName) { +return graphs.get(gName); +} + +public final void addGraph(final String gName, final Graph g) { +graphs.put(gName, g); +} + +/** + * Get a list of the {@link TraversalSource} instances and their binding names as defined by Gremlin Server + * initialization scripts. + * + * @return a {@link Map} where the key is the name of the {@link TraversalSource} and the value is the + * {@link TraversalSource} itself + */ +public final Map getTraversalSources() { +return traversalSources; +} + +pu
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r106454863 --- Diff: gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java --- @@ -0,0 +1,216 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tinkerpop.gremlin.server.util; + +import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource; +import org.apache.tinkerpop.gremlin.server.GraphManager; +import org.apache.tinkerpop.gremlin.server.GremlinServer; +import org.apache.tinkerpop.gremlin.server.Settings; +import org.apache.tinkerpop.gremlin.structure.Graph; +import org.apache.tinkerpop.gremlin.structure.Transaction; +import org.apache.tinkerpop.gremlin.structure.util.GraphFactory; +import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.script.Bindings; +import javax.script.SimpleBindings; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Predicate; +import java.util.function.Supplier; + +/** + * Holder for {@link Graph} and {@link TraversalSource} instances configured for the server to be passed to script + * engine bindings. The {@link Graph} instances are read from the {@link Settings} for Gremlin Server as defined in + * the configuration file. The {@link TraversalSource} instances are rebound to the {@code GraphManager} once + * initialization scripts construct them. + */ +public final class DefaultGraphManager implements GraphManager { +private static final Logger logger = LoggerFactory.getLogger(GremlinServer.class); + +private final Map graphs = new ConcurrentHashMap<>(); +private final Map traversalSources = new ConcurrentHashMap<>(); + +/** + * Create a new instance using the {@link Settings} from Gremlin Server. + */ +public DefaultGraphManager(final Settings settings) { +settings.graphs.entrySet().forEach(e -> { +try { +final Graph newGraph = GraphFactory.open(e.getValue()); +graphs.put(e.getKey(), newGraph); +logger.info("Graph [{}] was successfully configured via [{}].", e.getKey(), e.getValue()); +} catch (RuntimeException re) { +logger.warn(String.format("Graph [%s] configured at [%s] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: %s", +e.getKey(), e.getValue(), re.getMessage()), re); +if (re.getCause() != null) logger.debug("GraphFactory exception", re.getCause()); +} +}); +} + +/** + * Get a list of the {@link Graph} instances and their binding names as defined in the Gremlin Server + * configuration file. + * + * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself + */ +public final Map getGraphs() { +return graphs; +} + +public final Graph getGraph(final String gName) { +return graphs.get(gName); +} + +public final void addGraph(final String gName, final Graph g) { +graphs.put(gName, g); +} + +/** + * Get a list of the {@link TraversalSource} instances and their binding names as defined by Gremlin Server + * initialization scripts. + * + * @return a {@link Map} where the key is the name of the {@link TraversalSource} and the value is the + * {@link TraversalSource} itself + */ +public final Map getTraversalSources() { +return traversalSources; +} + +pu
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r106456922 --- Diff: gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java --- @@ -0,0 +1,216 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tinkerpop.gremlin.server.util; + +import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource; +import org.apache.tinkerpop.gremlin.server.GraphManager; +import org.apache.tinkerpop.gremlin.server.GremlinServer; +import org.apache.tinkerpop.gremlin.server.Settings; +import org.apache.tinkerpop.gremlin.structure.Graph; +import org.apache.tinkerpop.gremlin.structure.Transaction; +import org.apache.tinkerpop.gremlin.structure.util.GraphFactory; +import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.script.Bindings; +import javax.script.SimpleBindings; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Predicate; +import java.util.function.Supplier; + +/** + * Holder for {@link Graph} and {@link TraversalSource} instances configured for the server to be passed to script + * engine bindings. The {@link Graph} instances are read from the {@link Settings} for Gremlin Server as defined in + * the configuration file. The {@link TraversalSource} instances are rebound to the {@code GraphManager} once + * initialization scripts construct them. + */ +public final class DefaultGraphManager implements GraphManager { +private static final Logger logger = LoggerFactory.getLogger(GremlinServer.class); + +private final Map graphs = new ConcurrentHashMap<>(); +private final Map traversalSources = new ConcurrentHashMap<>(); + +/** + * Create a new instance using the {@link Settings} from Gremlin Server. + */ +public DefaultGraphManager(final Settings settings) { +settings.graphs.entrySet().forEach(e -> { +try { +final Graph newGraph = GraphFactory.open(e.getValue()); +graphs.put(e.getKey(), newGraph); +logger.info("Graph [{}] was successfully configured via [{}].", e.getKey(), e.getValue()); +} catch (RuntimeException re) { +logger.warn(String.format("Graph [%s] configured at [%s] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: %s", +e.getKey(), e.getValue(), re.getMessage()), re); +if (re.getCause() != null) logger.debug("GraphFactory exception", re.getCause()); +} +}); +} + +/** + * Get a list of the {@link Graph} instances and their binding names as defined in the Gremlin Server + * configuration file. + * + * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself + */ +public final Map getGraphs() { +return graphs; +} + +public final Graph getGraph(final String gName) { +return graphs.get(gName); +} + +public final void addGraph(final String gName, final Graph g) { +graphs.put(gName, g); +} + +/** + * Get a list of the {@link TraversalSource} instances and their binding names as defined by Gremlin Server + * initialization scripts. + * + * @return a {@link Map} where the key is the name of the {@link TraversalSource} and the value is the + * {@link TraversalSource} itself + */ +public final Map getTraversalSources() { +return traversalSources; +} + +pu
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r106248061 --- Diff: gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/BasicGraphManager.java --- @@ -0,0 +1,186 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tinkerpop.gremlin.server.util; + +import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource; +import org.apache.tinkerpop.gremlin.server.GraphManager; +import org.apache.tinkerpop.gremlin.server.GremlinServer; +import org.apache.tinkerpop.gremlin.server.Settings; +import org.apache.tinkerpop.gremlin.structure.Graph; +import org.apache.tinkerpop.gremlin.structure.Transaction; +import org.apache.tinkerpop.gremlin.structure.util.GraphFactory; +import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.script.Bindings; +import javax.script.SimpleBindings; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Predicate; +import java.util.function.Supplier; + +/** + * Holder for {@link Graph} and {@link TraversalSource} instances configured for the server to be passed to script + * engine bindings. The {@link Graph} instances are read from the {@link Settings} for Gremlin Server as defined in + * the configuration file. The {@link TraversalSource} instances are rebound to the {@code GraphManager} once + * initialization scripts construct them. + */ +public final class BasicGraphManager implements GraphManager { +private static final Logger logger = LoggerFactory.getLogger(GremlinServer.class); + +private final Map graphs = new ConcurrentHashMap<>(); +private final Map traversalSources = new ConcurrentHashMap<>(); + +/** + * Create a new instance using the {@link Settings} from Gremlin Server. + */ +public BasicGraphManager(final Settings settings) { +settings.graphs.entrySet().forEach(e -> { +try { +final Graph newGraph = GraphFactory.open(e.getValue()); +graphs.put(e.getKey(), newGraph); +logger.info("Graph [{}] was successfully configured via [{}].", e.getKey(), e.getValue()); +} catch (RuntimeException re) { +logger.warn(String.format("Graph [%s] configured at [%s] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: %s", +e.getKey(), e.getValue(), re.getMessage()), re); +if (re.getCause() != null) logger.debug("GraphFactory exception", re.getCause()); +} +}); +} + +/** + * Get a list of the {@link Graph} instances and their binding names as defined in the Gremlin Server + * configuration file. + * + * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself + */ +public Map getGraphs() { +return graphs; +} + +public Graph getGraph(String gName) { +return graphs.get(gName); +} + +public void addGraph(String gName, Graph g) { +graphs.put(gName, g); +} + +/** + * Get a list of the {@link TraversalSource} instances and their binding names as defined by Gremlin Server + * initialization scripts. + * + * @return a {@link Map} where the key is the name of the {@link TraversalSource} and the value is the + * {@link TraversalSource} itself + */ +public Map getTraversalSources() { +return traversalSources; +} + +public TraversalSource getTraversalSource
[GitHub] tinkerpop pull request #569: TINKERPOP-1438: GraphManager becomes a customiz...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/569#discussion_r106217616 --- Diff: gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java --- @@ -21,139 +21,82 @@ import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource; import org.apache.tinkerpop.gremlin.structure.Graph; import org.apache.tinkerpop.gremlin.structure.Transaction; -import org.apache.tinkerpop.gremlin.structure.util.GraphFactory; -import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import javax.script.Bindings; -import javax.script.SimpleBindings; -import java.util.HashSet; import java.util.Map; import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; -import java.util.function.Predicate; - -/** - * Holder for {@link Graph} and {@link TraversalSource} instances configured for the server to be passed to script - * engine bindings. The {@link Graph} instances are read from the {@link Settings} for Gremlin Server as defined in - * the configuration file. The {@link TraversalSource} instances are rebound to the {@code GraphManager} once - * initialization scripts construct them. - */ -public final class GraphManager { -private static final Logger logger = LoggerFactory.getLogger(GremlinServer.class); - -private final Map graphs = new ConcurrentHashMap<>(); -private final Map traversalSources = new ConcurrentHashMap<>(); +import java.util.function.Supplier; +public interface GraphManager { /** - * Create a new instance using the {@link Settings} from Gremlin Server. + * Get a list of the {@link Graph} instances and their binding names + * + * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself */ -public GraphManager(final Settings settings) { -settings.graphs.entrySet().forEach(e -> { -try { -final Graph newGraph = GraphFactory.open(e.getValue()); -graphs.put(e.getKey(), newGraph); -logger.info("Graph [{}] was successfully configured via [{}].", e.getKey(), e.getValue()); -} catch (RuntimeException re) { -logger.warn(String.format("Graph [%s] configured at [%s] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: %s", -e.getKey(), e.getValue(), re.getMessage()), re); -if (re.getCause() != null) logger.debug("GraphFactory exception", re.getCause()); -} -}); -} - +public Map getGraphs(); + /** - * Get a list of the {@link Graph} instances and their binding names as defined in the Gremlin Server - * configuration file. + * Get {@link Graph} instance whose name matches {@link gName} * - * @return a {@link Map} where the key is the name of the {@link Graph} and the value is the {@link Graph} itself + * @return {@link Graph} if exists, else null */ -public Map getGraphs() { -return graphs; -} +public Graph getGraph(String gName); /** - * Get a list of the {@link TraversalSource} instances and their binding names as defined by Gremlin Server - * initialization scripts. + * Add {@link Graph} g with name {@link String} gName to + * {@link Map} returned by call to getGraphs() + */ +public void addGraph(String gName, Graph g); --- End diff -- seems like `removeGraph(String)` or `removeGraph(Graph)` would be useful --- 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. ---
[GitHub] tinkerpop issue #571: TINKERPOP-1504 Added the property key to events for ne...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/571 Ran the docker build with tests, code reviewed the new test cases, they are quite thorough. Thanks @spmallette and @dkuppitz VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #571: TINKERPOP-1504 Added the property key to events for ne...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/571 Just amazed with TinkerPop, as usual. I saw last night @dkuppitz said he didn't have tests, then I check this morning, and boom! Tests and votes in place. --- 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. ---
[GitHub] tinkerpop issue #571: TINKERPOP-1504 Added the property key to events for ne...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/571 Yeah, I started looking at it... you guys are so fast! --- 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. ---
[GitHub] tinkerpop issue #569: TINKERPOP-1438: GraphManager becomes a customizable in...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/569 It would break if somebody was calling on `new GraphManager(Settings)`. You could change the interface to `IGraphManager` and have `GraphManager` implement it. --- 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. ---
[GitHub] tinkerpop issue #569: TINKERPOP-1438: GraphManager becomes a customizable in...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/569 No, it is mentioned here http://tinkerpop.apache.org/docs/3.2.4/dev/developer/#_contributing_code_changes Devs often use Docker for to run it `docker/build.sh -t -i -n` --- 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. ---
[GitHub] tinkerpop pull request #557: TINKERPOP-1633 use official jbcrypt 0.4 in mave...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/557#discussion_r101305064 --- Diff: docs/src/reference/gremlin-applications.asciidoc --- @@ -50,7 +50,6 @@ the defaults. TinkerPop recommends the following configuration in that file: http://repository.codehaus.org/"; m2compatible="true"/> --- End diff -- We can remove `codehaus` also. It went out of service a couple years ago. --- 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. ---
[GitHub] tinkerpop pull request #501: Added TP2-to-TP3 GraphML XSLT to resources
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/501#discussion_r97098416 --- Diff: gremlin-core/src/main/resources/tp2-to-tp3-graphml.xslt --- @@ -0,0 +1,40 @@ + + +http://graphml.graphdrawing.org/xmlns"; +xmlns:graphml="http://graphml.graphdrawing.org/xmlns"; +xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; +exclude-result-prefixes="graphml"> + + + + + + + + + + + + + + + + + + + + +vertex + + + + + + + + --- End diff -- Adding `` here seems to work. --- 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. ---
[GitHub] tinkerpop pull request #501: Added TP2-to-TP3 GraphML XSLT to resources
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/501#discussion_r97097293 --- Diff: gremlin-core/src/main/resources/tp2-to-tp3-graphml.xslt --- @@ -0,0 +1,40 @@ + + +http://graphml.graphdrawing.org/xmlns"; +xmlns:graphml="http://graphml.graphdrawing.org/xmlns"; +xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; +exclude-result-prefixes="graphml"> + + + + + + + + + + + + + + + + + + + + +vertex + + + + + + + + + + + --- End diff -- Appears that this transform creates the `labelE` child node, but the existing edge properties are not carried over. --- 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. ---
[GitHub] tinkerpop issue #501: Added TP2-to-TP3 GraphML XSLT to resources
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/501 Created https://issues.apache.org/jira/browse/TINKERPOP-1608 --- 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. ---
[GitHub] tinkerpop issue #506: TINKERPOP-1389: Support Spark 2.0.0
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/506 Successful `docker/build.sh -t -i -n` VOTE: +1 --- 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. ---
[GitHub] tinkerpop pull request #506: TINKERPOP-1389: Support Spark 2.0.0
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/506#discussion_r92624029 --- Diff: CHANGELOG.asciidoc --- @@ -46,6 +46,10 @@ TinkerPop 3.3.0 (Release Date: NOT OFFICIALLY RELEASED YET) * Removed all performance tests that were not part of `gremlin-benchmark`. * Removed dependency on `junit-benchmarks` and it's related reference to `h2`. * Moved the source for the "home page" into the repository under `/site` so that it easier to accept contributions. +* Bumped to support Spark 2.0.0. --- End diff -- Should make note here that we're bumping to Spark 2.0.0 with Scala 2.11. --- 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. ---
[GitHub] tinkerpop pull request #508: TINKERPOP-1363 Cleanup Docker build script for ...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/508#discussion_r90659320 --- Diff: CHANGELOG.asciidoc --- @@ -26,6 +26,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima TinkerPop 3.3.0 (Release Date: NOT OFFICIALLY RELEASED YET) ~~~ +* Updated Docker build scripts to include Python dependencies (NOTE: users should remove any previously generated TinkerPop Docker images). --- End diff -- I'm fine with leaving it out. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 We have enough votes to commit this. I'll handle it today. Thanks everyone. --- 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. ---
[GitHub] tinkerpop issue #508: TINKERPOP-1363 Cleanup Docker build script for next ma...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/508 `docker/build.sh -t -i -n -d` worked for me. I ran a Docker build against `tp31` afterwards, and that worked too. VOTE: +1 --- 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. ---
[GitHub] tinkerpop pull request #508: TINKERPOP-1363 Cleanup Docker build script for ...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/508#discussion_r90509684 --- Diff: CHANGELOG.asciidoc --- @@ -26,6 +26,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima TinkerPop 3.3.0 (Release Date: NOT OFFICIALLY RELEASED YET) ~~~ +* Updated Docker build scripts to include Python dependencies (NOTE: users should remove any previously generated TinkerPop Docker images). --- End diff -- should add this note to docs/src/upgrade/release-3.3.x.asciidoc --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 I reconfirmed with the latest updates and reaffirm my +1 vote from before. - On Docker, this builds cleanly with `docker/build.sh -t -n -i` - On Mac, this builds cleanly with `mvn clean install -DskipIntegrationTests=false` - On Windows, this builds cleanly with `mvn clean install -DskipTests` - Following it up with `mvn clean install -DskipIntegrationTests=false` succeeds all the way until `hadoop-gremlin` ``` [INFO] Apache TinkerPop ... SUCCESS [ 11.578 s] [INFO] Apache TinkerPop :: Gremlin Shaded . SUCCESS [ 3.609 s] [INFO] Apache TinkerPop :: Gremlin Core ... SUCCESS [ 45.703 s] [INFO] Apache TinkerPop :: Gremlin Test ... SUCCESS [ 15.797 s] [INFO] Apache TinkerPop :: Gremlin Groovy . SUCCESS [ 59.453 s] [INFO] Apache TinkerPop :: Gremlin Groovy Test SUCCESS [ 10.000 s] [INFO] Apache TinkerPop :: TinkerGraph Gremlin SUCCESS [04:31 min] [INFO] Apache TinkerPop :: Hadoop Gremlin . FAILURE [06:13 min] ``` Although this doesn't completely solve TinkerPop builds on Windows, it passes a lot more than it used to. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 I configured a system with the same specs as listed, but I got 3 consecutive successes. Not sure what the issue could be. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 @spmallette what's your Docker version and host platform? Curious to see if I can recreate the failure. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 I retested again overnight after rebasing the PR on `tp31` and still having success with Docker build on Ubuntu and Mac. Looking at the code changes, I don't see how they would cause that Spark failure. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 any update on your Docker build @spmallette? still works ok for me. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 @spmallette are you hitting that with `docker/build.sh -t` also or only with integration tests? --- 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. ---
[GitHub] tinkerpop issue #456: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/456 I meant that this pull request #456 can be closed @pauljackson. We'll work with the other one #457. --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 I didn't encounter any failures with the TinkerGraph integration tests on Windows. --- 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. ---
[GitHub] tinkerpop issue #456: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/456 I think this one can be closed @pauljackson, and we'll use the other one to merge to all the branches. --- 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. ---
[GitHub] tinkerpop issue #461: TINKERPOP-932 Added "force" option on session close.
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/461 Tested with: `mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false -DincludeNeo4j` Code review LGTM. VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #457: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/457 I verified multiple platforms to ensure the changes didn't have any adverse affects. - On Docker, this builds cleanly with `docker/build.sh -t -n -i` - On Mac, this builds cleanly with `mvn clean install -DskipIntegrationTests=false` - On Windows, this builds cleanly with `mvn clean install -DskipTests`. Following it up with `mvn clean install -DskipIntegrationTests=true` succeeds all the way through `hadoop-gremlin`, and then previously witnessed build failures on Windows start occurring in `spark-gremlin`. Skipping past `spark-gremlin` and `giraph-gremlin`, this builds cleanly to completion with `mvn clean install -DskipIntegrationTests=true -DincludeNeo4j -rf :neo4j-gremlin`. Code changes look good to me. VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #456: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/456 RAT exclusion works. A Windows user shouldn't be touching those symbolic links anyway. ``` diff --git a/pom.xml b/pom.xml index 2e67eda..5351689 100644 --- a/pom.xml +++ b/pom.xml @@ -293,6 +293,8 @@ limitations under the License. **/_bsp/** DEPENDENCIES **/.glv +bin/gremlin.sh +gremlin-console/bin/gremlin.sh ``` @pauljackson Can you get the exclusions added in `pom.xml` to the PR and retarget it to `apache:tp31`? --- 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. ---
[GitHub] tinkerpop issue #456: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/456 One problem I'm seeing is that RAT doesn't like these files on Windows: ``` Unapproved licenses: bin/gremlin.sh gremlin-console/bin/gremlin.sh ``` No complaints from Linux/Mac since they resolve OK with the [symlinks](https://github.com/apache/tinkerpop/pull/444). On Windows, they get extracted as files with content: ``` ../gremlin-console/bin/gremlin.sh ../target/apache-tinkerpop-gremlin-console-3.2.3-SNAPSHOT-standalone/bin/gremlin.sh ``` --- 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. ---
[GitHub] tinkerpop issue #456: TINKERPOP-1493 Groovy project doesn't build on Windows
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/456 Let's get 3.1.x fixed also. I don't see why not. --- 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. ---
[GitHub] tinkerpop pull request #385: TINKERPOP-1285 added multi-line line number sup...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/385#discussion_r76052809 --- Diff: gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy --- @@ -191,7 +192,18 @@ class Console { groovy.setResultHook(handleResultShowNothing) } -private def handlePrompt = { interactive ? STANDARD_INPUT_PROMPT : "" } +private def handlePrompt = { +if (interactive) { +int lineNo = groovy.buffers.current().size() +if (lineNo > 0 ) { +return lineNo.toString().padLeft(STANDARD_INPUT_PROMPT_PAD, '0').padRight(STANDARD_INPUT_PROMPT.length()-2, ' ') + "> " --- End diff -- Yeah, it might be better to merge the 2 PRs together. `STANDARD_INPUT_PROMPT.length()` is replaced by the `input.prompt` preference from the colorization PR. --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 I retested with the latest commits. Setting a preference value with spaces worked, remotes worked nicely with `conf/remote-objects.yaml`. Nice work @robertdale. `mvn clean install -pl gremlin-console -DskipIntegrationTests=false` was successful. One other thought here even though I've already voted... it might be better if the preference keys were all prefixed with `gremlin.` since Groovy preferences are [globally shared](https://github.com/apache/groovy/blob/master/src/main/org/codehaus/groovy/tools/shell/util/Preferences.java#L34) with other groovysh-based consoles. That preference problem may have hit us before with [`interpreterMode`](https://github.com/thinkaurelius/titan/issues/1172). --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 The colorization stuff looks good. One small problem I've run into is that you can't set a prompt string that contains spaces. For example, I tried `:set result.prompt 'result => '` and got this error message: ```Command ':set' requires arguments: []``` Setting the preference containing spaces from `groovysh` works fine. It appears to be specific to Gremlin Console, and it is reproducible in 3.2.1 without this PR. Would be fine to handle this bug as a separate JIRA. --- 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. ---
[GitHub] tinkerpop pull request #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/384#discussion_r75548087 --- Diff: gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy --- @@ -66,12 +72,48 @@ class Console { public static final String PREFERENCE_ITERATION_MAX = "max-iteration" private static final int DEFAULT_ITERATION_MAX = 100 private static int maxIteration = DEFAULT_ITERATION_MAX + + public static final String PREF_GREMLIN_COLOR = "gremlin.color" +def gremlinColor = { Preferences.get(PREF_GREMLIN_COLOR, "reset") } + --- End diff -- Got a mix of tab and space indenting going on here. The [dev docs](http://tinkerpop.apache.org/docs/current/dev/developer/#_code_style) don't call for one over the other, but most Java/Groovy files in the repo use spaces only. --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 Good news, it works on Windows. --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 _hoping I don't have to fire up that old machine_ :) --- 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. ---
[GitHub] tinkerpop issue #384: TINKERPOP-1037 Made life more colorful
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/384 @robertdale did you test this on Windows? --- 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. ---
[GitHub] tinkerpop issue #366: TINKERPOP-1379 remove excess bulk in tail buffer
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/366 Test case `g.V().repeat(__.in().out()).times(3).tail(7).count()` against the modern graph returns `-62`. Fails all the way back to 3.0.x. --- 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. ---
[GitHub] tinkerpop pull request #371: Added new recipe for Traversal Induced Values.
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/371#discussion_r73521595 --- Diff: docs/src/recipes/traversal-induced-values.asciidoc --- @@ -0,0 +1,83 @@ + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +[[traversal-induced-values]] +Traversal Induced Values + + +The parameters of a `Traversal` can be known ahead of time as constants or might otherwise be passed in as dynamic +arguments. + +[gremlin-groovy,modern] + +g.V().has('name','marko').out('knows').has('age', gt(29)).values('name') + + +In plain language, the above Gremlin asks, "What are the names of the people who Marko knows who are over the age of +29?". In this case, "29" is known as a constant to the traversal. Of course, if the question is changed slightly to +instead ask, "What are the names of the people who Marko knows who are older than he is?", the hardcoding of "29" will +no longer suffice. There are multiple ways Gremlin would allow this second question to be answered. The first is +obvious to any programmer - use a variable: + +[gremlin-groovy,modern] + +marko = g.V().has('name','marko').next() +g.V(marko).out('knows').has('age', gt(marko.value('age'))).values('name') + + +The downside to this approach is that it takes two separate traversals to answer the question. Ideally, there should +be a single traversal, that can query "marko" once, determine his `age` and then use that for the value supplied to +filter the people he knows. In this way the _value_ for the `age` filter is _induced_ from the `Traversal` itself. + +[gremlin-groovy,modern] + +g.V().has('name','marko').as('marko'). <1> + out('knows').as('friend'). <2> + filter(select('marko','friend').by('age'). <3> + where('friend', gt('marko'))).<4> + values('name') + + +<1> Find the "marko" `Vertex` and label it as "marko". +<2> Traverse out on the "knows" edges to the adjacent `Vertex` and label it as "person". +<3> Filter the incoming "person" vertices. It is within this filter, that the traversal induced values are utilized. +The inner `select` grabs the "marko" vertex and the current "friend". The `by` modulator extracts the "age" from both +of those vertices which yields a `Map` with two keys, "marko" and "friend", where the value of each is the "age". +<4> The `Map` produced in the previous step can then be filtered with `where` to only return a result if the "friend" +age is greater than the "marko" age. If this is successful, then the `filter` step from the previous line will succeed +and allow the "friend" vertex to pass through. + +This traversal could also be written declaratively with `match` step as follows: --- End diff -- Should there be any discussion of the possible performance differences between the 2 approaches? Or is that mostly a system-specific discussion? --- 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. ---
[GitHub] tinkerpop pull request #366: TINKERPOP-1379 remove excess bulk in tail buffe...
GitHub user pluradj opened a pull request: https://github.com/apache/tinkerpop/pull/366 TINKERPOP-1379 remove excess bulk in tail buffer https://issues.apache.org/jira/browse/TINKERPOP-1379 VOTE: +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1379 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/366.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 #366 commit db7526f477579ee7e731e51749c49e6de2c1e964 Author: Jason Plurad Date: 2016-07-30T04:04:54Z remove excess bulk in tail buffer --- 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. ---
[GitHub] tinkerpop issue #363: TINKERPOP-1379 remove excess bulk in tail buffer
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/363 I've come up with a cleaner test case. I'll close this PR and open a new one. --- 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. ---
[GitHub] tinkerpop pull request #363: TINKERPOP-1379 remove excess bulk in tail buffe...
Github user pluradj closed the pull request at: https://github.com/apache/tinkerpop/pull/363 --- 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. ---
[GitHub] tinkerpop pull request #363: TINKERPOP-1379 remove excess bulk in tail buffe...
GitHub user pluradj opened a pull request: https://github.com/apache/tinkerpop/pull/363 TINKERPOP-1379 remove excess bulk in tail buffer https://issues.apache.org/jira/browse/TINKERPOP-1379 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1379 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/363.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 #363 commit d43db2bb2f3f4988503f0cdedbd1877cd542c502 Author: Jason Plurad Date: 2016-07-20T16:31:53Z remove excess bulk in tail buffer --- 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. ---
[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/361 Merged, closing https://github.com/apache/tinkerpop/commit/90a4cdad129d0eecbd67da626d40c21872b596e0 --- 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. ---
[GitHub] tinkerpop pull request #361: TINKERPOP-1360: compare vertex property ids as ...
Github user pluradj closed the pull request at: https://github.com/apache/tinkerpop/pull/361 --- 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. ---
[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/361 VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/361 In the failing scenario, you have GraphSONRecordReader pulling in the graph and using Integer as the id type (via Jackson in GraphSONReader). It is getting compared against a graph from ToyGraphInputRDD which uses Long as the id type (via TinkerGraph default id manager). `equals()` comparison of the same value `6` fails because the types are different. ```java.lang.AssertionError: expected: java.lang.Integer<6> but was: java.lang.Long<6>``` Switching to `tinkerpop-modern-typed.json` instead of `tinkerpop-modern.json` doesn't help the situation since the id type isn't stored. --- 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. ---
[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/361 Perhaps, but [CTR](https://issues.apache.org/jira/browse/TINKERPOP-1360?focusedCommentId=15369381&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15369381) got us to this point. I'd rather have this reviewed than have something [ominous](https://lists.apache.org/thread.html/ff501e4391bd2e180f46891873b2fa7833c697742dd5dadd551bcca4@%3Cdev.tinkerpop.apache.org%3E) happen :unamused: --- 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. ---
[GitHub] tinkerpop pull request #361: TINKERPOP-1360: compare vertex property ids as ...
GitHub user pluradj opened a pull request: https://github.com/apache/tinkerpop/pull/361 TINKERPOP-1360: compare vertex property ids as Long https://issues.apache.org/jira/browse/TINKERPOP-1360 Verified with: ``` mvn clean install && mvn verify -q -DskipIntegrationTests=false -pl spark-gremlin ``` And via Docker ``` docker/build.sh -t -i -n ``` @spmallette @dkuppitz Please try out multiple times in your environments since the error only happens 1 out of 4 scenarios (based on 2 different `RANDOM.nextBooolean()` calls). I manually forced each scenario in by setting specific boolean values in `HadoopGraphProvider` and `SparkHadoopGraphProvider`. You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1360 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/361.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 #361 commit 30677963d4d5b74322796fb990161a94b43d00b1 Author: Jason Plurad Date: 2016-07-10T13:53:56Z compare vertex property ids as Long --- 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. ---
[GitHub] tinkerpop issue #315: Remove dashes from labels and property keys
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/315 LGTM. Is there a JIRA associated with this? VOTE: +1 --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 https://issues.apache.org/jira/browse/TINKERPOP-1360 --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 I'll open a JIRA for that issue. --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 Just confirmed that I can see the same problem occur intermittently on `tp31` without the fixes from this PR. --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 It appears intermittently for me after several consecutive attempts. I didn't make any changes to that failing class, and looking and the test case itself, I'm not sure why any of the included fixes would affect this. https://github.com/apache/tinkerpop/blob/TINKERPOP-1319/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/PropertiesTest.java#L103 Any ideas? --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 I'll rerun it too --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 ``` [INFO] [INFO] Reactor Summary: [INFO] [INFO] Apache TinkerPop .. SUCCESS [49.025s] [INFO] Apache TinkerPop :: Gremlin Shaded SUCCESS [10.134s] [INFO] Apache TinkerPop :: Gremlin Core .. SUCCESS [33.447s] [INFO] Apache TinkerPop :: Gremlin Test .. SUCCESS [8.743s] [INFO] Apache TinkerPop :: Gremlin Groovy SUCCESS [1:28.938s] [INFO] Apache TinkerPop :: Gremlin Groovy Test ... SUCCESS [9.088s] [INFO] Apache TinkerPop :: TinkerGraph Gremlin ... SUCCESS [4:05.011s] [INFO] Apache TinkerPop :: Hadoop Gremlin SUCCESS [6:23.000s] [INFO] Apache TinkerPop :: Spark Gremlin . SUCCESS [13:38.044s] [INFO] Apache TinkerPop :: Giraph Gremlin SUCCESS [2:01:30.357s] [INFO] Apache TinkerPop :: Neo4j Gremlin . SUCCESS [31:45.126s] [INFO] Apache TinkerPop :: Gremlin Driver SUCCESS [8.683s] [INFO] Apache TinkerPop :: Gremlin Server SUCCESS [12:03.655s] [INFO] Apache TinkerPop :: Gremlin Console ... SUCCESS [1:57.427s] [INFO] Apache TinkerPop :: Gremlin Archetype . SUCCESS [0.222s] [INFO] Apache TinkerPop :: Archetype - TinkerGraph ... SUCCESS [16.966s] [INFO] Apache TinkerPop :: Archetype - Server SUCCESS [13.702s] [INFO] [INFO] BUILD SUCCESS [INFO] [INFO] Total time: 3:15:22.725s [INFO] Finished at: Wed Jul 06 21:31:50 UTC 2016 [INFO] Final Memory: 106M/275M [INFO] Untagged: tinkerpop:build-1467828977 Deleted: sha256:fc0be61b8011cafa062bca435b24f0f1fa407d4891c2f93ca831ae5dd17c4184 Deleted: sha256:125d80aa8cb9f1988c9545af45434b45e997fa197a05e21ff0be06d31eb5c9f9 Deleted: sha256:ad8bc8dc69b8cf2e2d1a45d71ec3ceac476b10d9d410741157940a990ea54050 Deleted: sha256:4343aa626aa513ab75e38a1605adeb64bf8db026f4cc56b42b343b4798319a15 Deleted: sha256:94de2ed6571c94cbd0f154b71c7ca3f04d32e77228b79ed5922396ab4b340d62 Deleted: sha256:1915ffba96ed51ac0a85ba201be2c77eada5cb587b225841b0ae2841cb4403eb ``` Worked for me. Is this something I should wait on before committing? --- 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. ---
[GitHub] tinkerpop issue #335: TINKERPOP-1319: fix incorrect FeatureRequirement annot...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/335 Trying the docker build now. Not sure why that would be failing with the changes I made. --- 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. ---
[GitHub] tinkerpop issue #336: TINKERPOP-1320 fix GremlinGroovyScriptEngineFileSandbo...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/336 @spmallette I'll get this finished up before the weekend --- 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. ---
[GitHub] tinkerpop issue #336: TINKERPOP-1320 fix GremlinGroovyScriptEngineFileSandbo...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/336 Can you expand on that more, re: the duplication on `TestHelper.java`? I'd bumped into the two classes previously but haven't spent any time trying to figure out the reason why there are two of them. --- 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. ---
[GitHub] tinkerpop pull request #335: TINKERPOP-1319: fix incorrect FeatureRequiremen...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/335#discussion_r67160705 --- Diff: gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/FeatureSupportTest.java --- @@ -587,7 +587,7 @@ public void shouldSupportRemoveEdgesIfEdgeCanBeRemoved() throws Exception { public void shouldSupportRemovePropertyIfAPropertyCanBeRemoved() throws Exception { try { final Vertex v = graph.addVertex(); -final Edge e = v.addEdge("self", v); +final Edge e = v.addEdge("self", v, "name", "foo"); --- End diff -- Agreed. I started with all features set to `false` then started turning things on one at a time and in different combinations. --- 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. ---
[GitHub] tinkerpop pull request #335: TINKERPOP-1319: fix incorrect FeatureRequiremen...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/335#discussion_r67160532 --- Diff: gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexTest.java --- @@ -280,10 +280,9 @@ public void shouldHaveExceptionConsistencyWhenIdNotSupportedForAddEdge() throws } @Test -@FeatureRequirementSet(FeatureRequirementSet.Package.VERTICES_ONLY) -@FeatureRequirement(featureClass = VertexPropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) +@FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES) public void shouldHaveStandardStringRepresentation() { -final Vertex v = graph.addVertex("name", "marko", "age", 34); +final Vertex v = graph.addVertex(); --- End diff -- Yeah, I thought about just adding the `FEATURE_INTEGER_VALUES` annotation, but it seemed to me like the test didn't have anything to do with properties. I can add another test to test with `toString()` with properties. --- 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. ---
[GitHub] tinkerpop pull request #336: TINKERPOP-1320 fix GremlinGroovyScriptEngineFil...
Github user pluradj commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/336#discussion_r67157872 --- Diff: gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoWriter.java --- @@ -131,7 +131,7 @@ public void writeVertexProperty(final OutputStream outputStream, final VertexPro public void writeProperty(final OutputStream outputStream, final Property p) throws IOException { final Output output = new Output(outputStream); writeHeader(output); -kryo.writeObject(output, DetachedFactory.detach(p, true)); --- End diff -- Let me pull out this one change and open up a separate issue for it. I'll expand more in the issue on this one. --- 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. ---
[GitHub] tinkerpop pull request #336: TINKERPOP-1320 fix GremlinGroovyScriptEngineFil...
GitHub user pluradj opened a pull request: https://github.com/apache/tinkerpop/pull/336 TINKERPOP-1320 fix GremlinGroovyScriptEngineFileSandboxTest resource loading https://issues.apache.org/jira/browse/TINKERPOP-1320 Passed `mvn clean install -DincludeNeo4j` and integration tests cleanly. May be CTR worthy. Let me know. VOTE: +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1320 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/336.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 #336 commit 11491010f151d32ce80d7b9fdb88f17f57181fd8 Author: Jason Plurad Date: 2016-06-15T12:49:17Z fix GremlinGroovyScriptEngineFileSandboxTest resource loading --- 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. ---
[GitHub] tinkerpop pull request #335: TINKERPOP-1319: fix incorrect FeatureRequiremen...
GitHub user pluradj opened a pull request: https://github.com/apache/tinkerpop/pull/335 TINKERPOP-1319: fix incorrect FeatureRequirement annotations https://issues.apache.org/jira/browse/TINKERPOP-1319 Passed `mvn clean install -DincludeNeo4j` and integration tests cleanly. May be CTR worthy. Let me know. VOTE: +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1319 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/335.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 #335 commit 6fe943ff67cea8383afc6f046c175d89092601da Author: Jason Plurad Date: 2016-06-15T12:51:43Z fix incorrect FeatureRequirement annotations --- 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. ---
[GitHub] tinkerpop issue #330: TINKERPOP-1319: several FeatureRequirement annotations...
Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/330 @spmallette because I find myself in GitHub more often than ASF git. I'll close this and reopen a new PR. --- 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. ---
[GitHub] tinkerpop pull request #330: TINKERPOP-1319: several FeatureRequirement anno...
Github user pluradj closed the pull request at: https://github.com/apache/tinkerpop/pull/330 --- 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. ---
[GitHub] incubator-tinkerpop issue #330: TINKERPOP-1319: several FeatureRequirement a...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/330 `mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false` runs cleanly. VOTE: +1 --- 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. ---
[GitHub] incubator-tinkerpop issue #329: TINKERPOP-1318: use mockito-core instead of ...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/329 VOTE: +1 --- 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. ---
[GitHub] incubator-tinkerpop issue #328: TINKERPOP-1317: use graph class as root clas...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/328 I always forget to vote for my own stuff. Thanks all. VOTE: +1 --- 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. ---
[GitHub] incubator-tinkerpop issue #322: TINKERPOP-1196 Fix for Result.one() which co...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/322 I inspected the code, and got 5 successful runs on my Mac. VOTE: +1 --- 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. ---
[GitHub] incubator-tinkerpop issue #329: TINKERPOP-1318: use mockito-core instead of ...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/329 This change is simple enough and shouldn't impact anything (short of an incompatibility between mockito and the version of hamcrest here, but the tests pass so it should be ok.) VOTE +1 --- 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. ---
[GitHub] incubator-tinkerpop issue #329: TINKERPOP-1318: use mockito-core instead of ...
Github user pluradj commented on the issue: https://github.com/apache/incubator-tinkerpop/pull/329 Yes, I ran integration tests with `-DincludeNeo4j` --- 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. ---
[GitHub] incubator-tinkerpop pull request #330: several FeatureRequirement annotation...
GitHub user pluradj opened a pull request: https://github.com/apache/incubator-tinkerpop/pull/330 several FeatureRequirement annotations are incorrect https://issues.apache.org/jira/browse/TINKERPOP-1319 You can merge this pull request into a Git repository by running: $ git pull https://github.com/pluradj/incubator-tinkerpop TINKERPOP-1319 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-tinkerpop/pull/330.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 #330 commit d0878cf70778c637cafa43d09f9a134d89ee5024 Author: Jason Plurad Date: 2016-06-03T17:06:27Z several FeatureRequirement annotations are incorrect --- 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. ---