[jira] [Commented] (TINKERPOP-1254) Support dropping traverser path information when it is no longer needed.

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15370018#comment-15370018
 ] 

ASF GitHub Bot commented on TINKERPOP-1254:
---

Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
That's excellent!  Integration tests almost ran all the way through for me, 
got an odd failure during the Archetype - Server, noted below.  I'm going to 
rerun anyway with the latest commit and using docker this time.

```
[INFO] 

[INFO] Reactor Summary:
[INFO]
[INFO] Apache TinkerPop ... SUCCESS [  
9.540 s]
[INFO] Apache TinkerPop :: Gremlin Shaded . SUCCESS [  
3.640 s]
[INFO] Apache TinkerPop :: Gremlin Core ... SUCCESS [01:27 
min]
[INFO] Apache TinkerPop :: Gremlin Test ... SUCCESS [ 
11.518 s]
[INFO] Apache TinkerPop :: Gremlin Groovy . SUCCESS [ 
49.133 s]
[INFO] Apache TinkerPop :: Gremlin Groovy Test  SUCCESS [  
8.280 s]
[INFO] Apache TinkerPop :: TinkerGraph Gremlin  SUCCESS [03:40 
min]
[INFO] Apache TinkerPop :: Gremlin Benchmark .. SUCCESS [  
4.660 s]
[INFO] Apache TinkerPop :: Hadoop Gremlin . SUCCESS [06:14 
min]
[INFO] Apache TinkerPop :: Spark Gremlin .. SUCCESS [19:37 
min]
[INFO] Apache TinkerPop :: Giraph Gremlin . SUCCESS [  
02:54 h]
[INFO] Apache TinkerPop :: Neo4j Gremlin .. SUCCESS [  
4.160 s]
[INFO] Apache TinkerPop :: Gremlin Driver . SUCCESS [ 
11.340 s]
[INFO] Apache TinkerPop :: Gremlin Server . SUCCESS [12:58 
min]
[INFO] Apache TinkerPop :: Gremlin Console  SUCCESS [01:36 
min]
[INFO] Apache TinkerPop :: Gremlin Archetype .. SUCCESS [  
0.151 s]
[INFO] Apache TinkerPop :: Archetype - TinkerGraph  FAILURE [  
0.374 s]
[INFO] Apache TinkerPop :: Archetype - Server . SKIPPED
[INFO] 

[INFO] BUILD FAILURE
[INFO] 

[INFO] Total time: 03:41 h
[INFO] Finished at: 2016-07-10T15:06:49-05:00
[INFO] Final Memory: 66M/727M
[INFO] 

[ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-surefire-plugin:2.17:test (default-test) on 
project gremlin-archetype-tinkergraph: Execution default-test of goal 
org.apache.maven.plugins:maven-surefire-plugin:2.17:test failed: There was an 
error in the forke
d process
[ERROR] java.lang.NoClassDefFoundError: 
projects/standard/project/gremlin-archetype-tinkergraph/target/test-classes/com/test/example/AppTest
 (wrong name: com/test/example/AppTest)
[ERROR] at java.lang.ClassLoader.defineClass1(Native Method)
[ERROR] at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
[ERROR] at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
```


> Support dropping traverser path information when it is no longer needed.
> 
>
> Key: TINKERPOP-1254
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1254
> Project: TinkerPop
>  Issue Type: Improvement
>  Components: process
>Affects Versions: 3.1.1-incubating
>Reporter: Marko A. Rodriguez
>Assignee: Ted Wilmes
>
> The most expensive traversals (especially in OLAP) are those that can not be 
> "bulked." There are various reasons why two traversers at the same object can 
> not be bulked, but the primary reason is {{PATH}} or {{LABELED_PATH}}. That 
> is, when the history of the traverser is required, the probability of two 
> traversers having the same history is low.
> A key to making traversals more efficient is to do as a much as possible to 
> remove historic information from a traverser so it can get bulked. How does 
> one do this? 
> {code}
> g.V.as('a').out().as('b').out().where(neq('a').and().neq('b')).both().name
> {code}
> The {{LABELED_PATH}} of "a" and "b" are required up to the {{where()}} and at 
> which point, at {{both()}}, they are no longer required. It would be smart to 
> support:
> {code}
> traverser.dropLabels(Set)
> traverser.dropPath()
> {code}
> We would then, via a {{TraversalOptimizationStrategy}} insert a step between 
> {{where()}} and {{both()}} called {{PathPruneStep}} which would be a 
> {{SideEffectStep}}. The strategy would know which labels were no longer 
> needed (via forward lookahead) and then do:
> {code}
> public 

[GitHub] tinkerpop issue #358: TINKERPOP-1254 Support dropping traverser path informa...

2016-07-10 Thread twilmes
Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
That's excellent!  Integration tests almost ran all the way through for me, 
got an odd failure during the Archetype - Server, noted below.  I'm going to 
rerun anyway with the latest commit and using docker this time.

```
[INFO] 

[INFO] Reactor Summary:
[INFO]
[INFO] Apache TinkerPop ... SUCCESS [  
9.540 s]
[INFO] Apache TinkerPop :: Gremlin Shaded . SUCCESS [  
3.640 s]
[INFO] Apache TinkerPop :: Gremlin Core ... SUCCESS [01:27 
min]
[INFO] Apache TinkerPop :: Gremlin Test ... SUCCESS [ 
11.518 s]
[INFO] Apache TinkerPop :: Gremlin Groovy . SUCCESS [ 
49.133 s]
[INFO] Apache TinkerPop :: Gremlin Groovy Test  SUCCESS [  
8.280 s]
[INFO] Apache TinkerPop :: TinkerGraph Gremlin  SUCCESS [03:40 
min]
[INFO] Apache TinkerPop :: Gremlin Benchmark .. SUCCESS [  
4.660 s]
[INFO] Apache TinkerPop :: Hadoop Gremlin . SUCCESS [06:14 
min]
[INFO] Apache TinkerPop :: Spark Gremlin .. SUCCESS [19:37 
min]
[INFO] Apache TinkerPop :: Giraph Gremlin . SUCCESS [  
02:54 h]
[INFO] Apache TinkerPop :: Neo4j Gremlin .. SUCCESS [  
4.160 s]
[INFO] Apache TinkerPop :: Gremlin Driver . SUCCESS [ 
11.340 s]
[INFO] Apache TinkerPop :: Gremlin Server . SUCCESS [12:58 
min]
[INFO] Apache TinkerPop :: Gremlin Console  SUCCESS [01:36 
min]
[INFO] Apache TinkerPop :: Gremlin Archetype .. SUCCESS [  
0.151 s]
[INFO] Apache TinkerPop :: Archetype - TinkerGraph  FAILURE [  
0.374 s]
[INFO] Apache TinkerPop :: Archetype - Server . SKIPPED
[INFO] 

[INFO] BUILD FAILURE
[INFO] 

[INFO] Total time: 03:41 h
[INFO] Finished at: 2016-07-10T15:06:49-05:00
[INFO] Final Memory: 66M/727M
[INFO] 

[ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-surefire-plugin:2.17:test (default-test) on 
project gremlin-archetype-tinkergraph: Execution default-test of goal 
org.apache.maven.plugins:maven-surefire-plugin:2.17:test failed: There was an 
error in the forke
d process
[ERROR] java.lang.NoClassDefFoundError: 
projects/standard/project/gremlin-archetype-tinkergraph/target/test-classes/com/test/example/AppTest
 (wrong name: com/test/example/AppTest)
[ERROR] at java.lang.ClassLoader.defineClass1(Native Method)
[ERROR] at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
[ERROR] at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
```


---
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.
---


[jira] [Commented] (TINKERPOP-1360) intermittent error in spark-gremlin integration test

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369900#comment-15369900
 ] 

ASF GitHub Bot commented on TINKERPOP-1360:
---

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: 


> intermittent error in spark-gremlin integration test
> 
>
> Key: TINKERPOP-1360
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1360
> Project: TinkerPop
>  Issue Type: Bug
>  Components: test-suite
>Affects Versions: 3.1.2-incubating
>Reporter: Jason Plurad
>Assignee: Jason Plurad
>Priority: Minor
>
> This error intermittently comes up during the Spark integration tests
> {noformat}
> Tests run: 457, Failures: 1, Errors: 0, Skipped: 150, Time elapsed: 110.068 
> sec <<< FAILURE! - in 
> org.apache.tinkerpop.gremlin.spark.process.computer.SparkGraphComputerProcessIntegrateTest
> g_V_hasXageX_propertiesXnameX(org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest$Traversals)
>   Time elapsed: 0.185 sec  <<< FAILURE!
> java.lang.AssertionError: expected: java.lang.Integer<6> but was: 
> java.lang.Long<6>
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.failNotEquals(Assert.java:834)
>   at org.junit.Assert.assertEquals(Assert.java:118)
>   at org.junit.Assert.assertEquals(Assert.java:144)
>   at 
> org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest.g_V_hasXageX_propertiesXnameX(PropertiesTest.java:103)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:497)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
>   at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:53)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:37)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at org.junit.runners.Suite.runChild(Suite.java:128)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:212)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:50)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
>   at 
> org.apache.maven.surefire.booter

[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long

2016-07-10 Thread pluradj
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.
---


[jira] [Commented] (TINKERPOP-1254) Support dropping traverser path information when it is no longer needed.

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369891#comment-15369891
 ] 

ASF GitHub Bot commented on TINKERPOP-1254:
---

Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
Check this out on OLTP nowINSANE.

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808   1.273 0.02
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...  14465066
  1149645945.24697.59
  MatchStartStep(a)  808
 808  74.614
  VertexStep(OUT,vertex)8049
8049  77.965
  MatchEndStep(b)   8049
8049  97.455
  MatchStartStep(b) 8049
7957  69.525
  VertexStep(OUT,vertex)  327370
  327370 180.215
  MatchEndStep(c) 327370
  327370 792.902
  MatchStartStep(c)   327370
   56814  98.793
  VertexStep(OUT,vertex)14465066
 1728961 703.308
  MatchEndStep(d)   14465066
 17289612470.109
NoOpBarrierStep(2500)   14465066
 452 144.282 2.37
SelectOneStep(d)14465066
 452   1.067 0.02
CountGlobalStep1
   1   0.223 0.00
>TOTAL -
   -6092.093-

Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808  22.107 0.03
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...  14465066
14448765   69090.22387.45
  MatchStartStep(a)  808
 8084040.859
  VertexStep(OUT,vertex)8049
80493886.808
  MatchEndStep(b)   8049
80493655.827
  MatchStartStep(b) 8049
79573062.039
  VertexStep(OUT,vertex)  327370
  3273703942.711
  MatchEndStep(c) 327370
  3273703789.122
  MatchStartStep(c)   327370
  326983 437.946
  VertexStep(OUT,vertex)14465066
144650665516.906
  MatchEndStep(d)   14465066
144650666793.385
SelectOneStep(d)14465066
144487657155.383 9.06
CountGlobalStep1
   12734.799 3.46
>TOTAL -
   -   79002.514-
```


> Support dropping traverser path information when it is no longer needed.
> 
>
> Key: TINKERPOP-1254
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1254
> Project: TinkerPop
>  Issue Type: Improvement
>  Components: process
>Affects Versions: 3.1.1-incubating
>Reporter: Marko A. Rodriguez
>Assignee: Ted Wilmes
>
> The most expensive traversals (especially in OLAP) are those that can not be 
> "bulked." There are various reasons why two traversers at the same object can 
> not be bulked, but the primary reason is {{PATH}} or {{LABELED_PATH}}. That 
> is, when the history of the traverser is required, the probability of two 
> traversers having the same history is low.
> A key to making traversals more efficient 

[GitHub] tinkerpop issue #358: TINKERPOP-1254 Support dropping traverser path informa...

2016-07-10 Thread okram
Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
Check this out on OLTP nowINSANE.

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808   1.273 0.02
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...  14465066
  1149645945.24697.59
  MatchStartStep(a)  808
 808  74.614
  VertexStep(OUT,vertex)8049
8049  77.965
  MatchEndStep(b)   8049
8049  97.455
  MatchStartStep(b) 8049
7957  69.525
  VertexStep(OUT,vertex)  327370
  327370 180.215
  MatchEndStep(c) 327370
  327370 792.902
  MatchStartStep(c)   327370
   56814  98.793
  VertexStep(OUT,vertex)14465066
 1728961 703.308
  MatchEndStep(d)   14465066
 17289612470.109
NoOpBarrierStep(2500)   14465066
 452 144.282 2.37
SelectOneStep(d)14465066
 452   1.067 0.02
CountGlobalStep1
   1   0.223 0.00
>TOTAL -
   -6092.093-

Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808  22.107 0.03
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...  14465066
14448765   69090.22387.45
  MatchStartStep(a)  808
 8084040.859
  VertexStep(OUT,vertex)8049
80493886.808
  MatchEndStep(b)   8049
80493655.827
  MatchStartStep(b) 8049
79573062.039
  VertexStep(OUT,vertex)  327370
  3273703942.711
  MatchEndStep(c) 327370
  3273703789.122
  MatchStartStep(c)   327370
  326983 437.946
  VertexStep(OUT,vertex)14465066
144650665516.906
  MatchEndStep(d)   14465066
144650666793.385
SelectOneStep(d)14465066
144487657155.383 9.06
CountGlobalStep1
   12734.799 3.46
>TOTAL -
   -   79002.514-
```


---
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.
---


[jira] [Commented] (TINKERPOP-1254) Support dropping traverser path information when it is no longer needed.

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369889#comment-15369889
 ] 

ASF GitHub Bot commented on TINKERPOP-1254:
---

Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
Verified the following simply traversal on Grateful Dead graph. For OLTP 
(`MatchStep.standardAlgorithm()`), I added a lazy barrier internal to 
`MatchStep` which is similar in behavior to the lazy barrier OLTP optimization 
added in `PrunePathStrategy`.

```
source.V().match(
as("a").out().as("b"),
as("b").out().as("c")).
  select("c").count().profile()
```

*With and then without PrunePathStrategy OLAP*

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808  40.41843.47
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
 452  28.01530.13
  MatchStartStep(a)  808
 808  61.751
  VertexStep(OUT,vertex)8049
7957  37.971
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(b) 8049
 562  14.453
  VertexStep(OUT,vertex)  327370
7510  16.124
  MatchEndStep(c) (profiling ignored)   
   0.000
SelectOneStep(c)  327370
 452  24.53126.39
CountGlobalStep1
   1   0.004 0.00
>TOTAL -
   -  92.969-
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808   6.844 0.35
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
  3269831257.05064.22
  MatchStartStep(a)  808
 808  11.806
  VertexStep(OUT,vertex)8049
7957  30.286
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(b) 8049
7957  14.627
  VertexStep(OUT,vertex)  327370
  326983 774.934
  MatchEndStep(c) (profiling ignored)   
   0.000
SelectOneStep(c)  327370
  326983 693.56435.43
CountGlobalStep1
   1   0.001 0.00
>TOTAL -
   -1957.460-
```

*With and then without PrunePathStrategy OLTP*

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808   2.050 0.07
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
   568142794.28891.47
  MatchStartStep(a)  808
 808 103.524
  VertexStep(OUT,vertex)8049
8049 107.345
  MatchEndStep(b)   8049
8049 159.505
  MatchStartStep(b) 8049
7957 105.127
  VertexStep(OUT,vertex)  327370
  327370 351.935
  MatchEndStep(c) 327370
  3273701331.478
NoOpBarrierStep(1000)

[GitHub] tinkerpop issue #358: TINKERPOP-1254 Support dropping traverser path informa...

2016-07-10 Thread okram
Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
Verified the following simply traversal on Grateful Dead graph. For OLTP 
(`MatchStep.standardAlgorithm()`), I added a lazy barrier internal to 
`MatchStep` which is similar in behavior to the lazy barrier OLTP optimization 
added in `PrunePathStrategy`.

```
source.V().match(
as("a").out().as("b"),
as("b").out().as("c")).
  select("c").count().profile()
```

*With and then without PrunePathStrategy OLAP*

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808  40.41843.47
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
 452  28.01530.13
  MatchStartStep(a)  808
 808  61.751
  VertexStep(OUT,vertex)8049
7957  37.971
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(b) 8049
 562  14.453
  VertexStep(OUT,vertex)  327370
7510  16.124
  MatchEndStep(c) (profiling ignored)   
   0.000
SelectOneStep(c)  327370
 452  24.53126.39
CountGlobalStep1
   1   0.004 0.00
>TOTAL -
   -  92.969-
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808   6.844 0.35
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
  3269831257.05064.22
  MatchStartStep(a)  808
 808  11.806
  VertexStep(OUT,vertex)8049
7957  30.286
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(b) 8049
7957  14.627
  VertexStep(OUT,vertex)  327370
  326983 774.934
  MatchEndStep(c) (profiling ignored)   
   0.000
SelectOneStep(c)  327370
  326983 693.56435.43
CountGlobalStep1
   1   0.001 0.00
>TOTAL -
   -1957.460-
```

*With and then without PrunePathStrategy OLTP*

```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
TinkerGraphStep(vertex,[])   808
 808   2.050 0.07
MatchStep(AND,[[MatchStartStep(a), ProfileStep,...327370
   568142794.28891.47
  MatchStartStep(a)  808
 808 103.524
  VertexStep(OUT,vertex)8049
8049 107.345
  MatchEndStep(b)   8049
8049 159.505
  MatchStartStep(b) 8049
7957 105.127
  VertexStep(OUT,vertex)  327370
  327370 351.935
  MatchEndStep(c) 327370
  3273701331.478
NoOpBarrierStep(1000) 327370
 452 254.309 8.32
SelectOneStep(c)  327370
 452   3.731 0.12
CountGlobalStep1
  

[jira] [Commented] (TINKERPOP-1360) intermittent error in spark-gremlin integration test

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369862#comment-15369862
 ] 

ASF GitHub Bot commented on TINKERPOP-1360:
---

Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/361
  
VOTE +1. I think this could have been CTR'd as well given the simplicity of 
the change. 


> intermittent error in spark-gremlin integration test
> 
>
> Key: TINKERPOP-1360
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1360
> Project: TinkerPop
>  Issue Type: Bug
>  Components: test-suite
>Affects Versions: 3.1.2-incubating
>Reporter: Jason Plurad
>Assignee: Jason Plurad
>Priority: Minor
>
> This error intermittently comes up during the Spark integration tests
> {noformat}
> Tests run: 457, Failures: 1, Errors: 0, Skipped: 150, Time elapsed: 110.068 
> sec <<< FAILURE! - in 
> org.apache.tinkerpop.gremlin.spark.process.computer.SparkGraphComputerProcessIntegrateTest
> g_V_hasXageX_propertiesXnameX(org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest$Traversals)
>   Time elapsed: 0.185 sec  <<< FAILURE!
> java.lang.AssertionError: expected: java.lang.Integer<6> but was: 
> java.lang.Long<6>
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.failNotEquals(Assert.java:834)
>   at org.junit.Assert.assertEquals(Assert.java:118)
>   at org.junit.Assert.assertEquals(Assert.java:144)
>   at 
> org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest.g_V_hasXageX_propertiesXnameX(PropertiesTest.java:103)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:497)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
>   at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:53)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:37)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at org.junit.runners.Suite.runChild(Suite.java:128)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:212)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:50)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> {noformat}
> Reproduce steps:
> {noformat}
> mvn verify -q -DskipIntegrationTests=false -pl spark-gremlin
> {noformat}
> Environments used:
> {noformat}
> Apache Maven 3.0.5
> Maven h

[GitHub] tinkerpop issue #361: TINKERPOP-1360: compare vertex property ids as Long

2016-07-10 Thread okram
Github user okram commented on the issue:

https://github.com/apache/tinkerpop/pull/361
  
VOTE +1. I think this could have been CTR'd as well given the simplicity of 
the change. 


---
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.
---


[jira] [Commented] (TINKERPOP-1254) Support dropping traverser path information when it is no longer needed.

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369850#comment-15369850
 ] 

ASF GitHub Bot commented on TINKERPOP-1254:
---

Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
It looks like this failed:


`IdentityRemovalStrategyTest$PerformanceTest>TraversalStrategyPerformanceTest.shouldBeFaster:107
 null`

I've seen this fail on occasion in the past off of a clean master, it may 
be sensitive to any performance hiccups on the box that occur while the test is 
running.


> Support dropping traverser path information when it is no longer needed.
> 
>
> Key: TINKERPOP-1254
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1254
> Project: TinkerPop
>  Issue Type: Improvement
>  Components: process
>Affects Versions: 3.1.1-incubating
>Reporter: Marko A. Rodriguez
>Assignee: Ted Wilmes
>
> The most expensive traversals (especially in OLAP) are those that can not be 
> "bulked." There are various reasons why two traversers at the same object can 
> not be bulked, but the primary reason is {{PATH}} or {{LABELED_PATH}}. That 
> is, when the history of the traverser is required, the probability of two 
> traversers having the same history is low.
> A key to making traversals more efficient is to do as a much as possible to 
> remove historic information from a traverser so it can get bulked. How does 
> one do this? 
> {code}
> g.V.as('a').out().as('b').out().where(neq('a').and().neq('b')).both().name
> {code}
> The {{LABELED_PATH}} of "a" and "b" are required up to the {{where()}} and at 
> which point, at {{both()}}, they are no longer required. It would be smart to 
> support:
> {code}
> traverser.dropLabels(Set)
> traverser.dropPath()
> {code}
> We would then, via a {{TraversalOptimizationStrategy}} insert a step between 
> {{where()}} and {{both()}} called {{PathPruneStep}} which would be a 
> {{SideEffectStep}}. The strategy would know which labels were no longer 
> needed (via forward lookahead) and then do:
> {code}
> public class PathPruneStep {
>   final Set dropLabels = ...
>   final boolean dropPath = ...
>   public void sideEffect(final Traverser traverser) {
> final Traverser start = this.starts.next();
> if(this.dropPath) start.dropPath();
> else start.dropLabels(labels); 
>   }
> }
> {code}
> Again, the more we can prune historic path data no longer needed, the higher 
> the probability of bulking. Think about this in terms of {{match()}}.
> {code}
> g.V().match(
>   a.out.b,
>   b.out.c,
>   c.neq.a,
>   c.out.b,
> ).select("a")
> {code}
> All we need is "a" at the end. Thus, once a pattern has been passed and no 
> future patterns require that label, drop it! 
> This idea is related to TINKERPOP-331, but I don't think we should deal with 
> manipulating the species. Thus, I think 331 is too "low level."



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] tinkerpop issue #358: TINKERPOP-1254 Support dropping traverser path informa...

2016-07-10 Thread twilmes
Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
It looks like this failed:


`IdentityRemovalStrategyTest$PerformanceTest>TraversalStrategyPerformanceTest.shouldBeFaster:107
 null`

I've seen this fail on occasion in the past off of a clean master, it may 
be sensitive to any performance hiccups on the box that occur while the test is 
running.


---
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.
---


Re: [DISCUSS] ASF Board Draft Report - July 2016

2016-07-10 Thread Ted Wilmes
Looks good, thanks Stephen.

--Ted

On Fri, Jul 8, 2016 at 7:12 AM, Stephen Mallette 
wrote:

> ## Description:
>  Apache TinkerPop is a graph computing framework for both graph databases
>  (OLTP) and graph analytic systems (OLAP).
>
>  It was reported last month that TinkerPop had still not completely
> transferred
>  from incubator infrastructure. Since that time, Apache Infrastructure has
>  completed the transfer and TinkerPop is now fully on TLP infrastructure.
>
>  As alluded to in the previous report, two releases (3.1.3 and 3.2.1) are
> expected
>  to be up for vote by the community during the week of July 18th. Major
>  development continues to focus on opening TinkerPop to non-JVM programming
>  languages through the concept of Gremlin Language Variants[1]. TinkerPop
> is
>  currently focused on Python as the first of these languages to support.
>
> ## Issues:
>   There are no issues requiring board attention at this time.
>
> ## Releases:
>  - 3.1.2 (April 8, 2016)
>  - 3.2.0 (April 8, 2016)
>
> ## PMC/Committer:
>
>  - Last PMC addition was Dylan Millikin - May 2016
>  - Last committer addition was Michael Pollmeier - April 2016
>
> ## Links
>
> [1]
>
> http://tinkerpop.apache.org/docs/3.2.1-SNAPSHOT/tutorials/gremlin-language-variants/
>


[jira] [Commented] (TINKERPOP-1254) Support dropping traverser path information when it is no longer needed.

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369701#comment-15369701
 ] 

ASF GitHub Bot commented on TINKERPOP-1254:
---

Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
I made a small update to `ReferencePath` to create new label Sets when a 
patch is detached.  This had been causing issues where the first set of labels 
for a path where being shared across `MutablePaths` after detachment.  A label 
would be removed from one, and therefore all of the traversers that had that 
label `Set` in their path, would be affected.

The `PathProcessors` are now respecting keepLabels null and labels are not 
dropped if `PrunePathStrategy` is not applied.

**PrunePathStrategy on**
```
g.V().match(
as("a").in("sungBy").as("b"),
as("a").in("sungBy").as("c"),
as("b").out("writtenBy").as("d"),
as("c").out("writtenBy").as("e"),
as("d").has("name", "George_Harrison"),
as("e").has("name", "Bob_Marley")).select("a").count().profile()

Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808  44.21799.97
MatchStep(AND,[[MatchStartStep(a), ProfileStep,... 1
   1   0.004 0.01
  MatchStartStep(a)  808
 808  43.517
  VertexStep(IN,[sungBy],vertex) 501
 499  20.323
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(a)2
   2   0.006
  VertexStep(IN,[sungBy],vertex) 156
 156   2.129
  MatchEndStep(c) (profiling ignored)   
   0.000
  MatchStartStep(b)  501
 499   5.126
  VertexStep(OUT,[writtenBy],vertex) 509
 504   3.423
  MatchEndStep(d) (profiling ignored)   
   0.000
  MatchStartStep(c)  156
 156   1.083
  VertexStep(OUT,[writtenBy],vertex) 157
 157   1.029
  MatchEndStep(e) (profiling ignored)   
   0.000
  MatchStartStep(d)  509
 266   1.685
  HasStep([name.eq(George_Harrison)])  2
   2   0.002
  MatchEndStep (profiling ignored)  
   0.000
  MatchStartStep(e)  157
  57   0.391
  HasStep([name.eq(Bob_Marley)])   1
   1   0.001
  MatchEndStep (profiling ignored)  
   0.000
SelectOneStep(a)   1
   1   0.003 0.01
CountGlobalStep1
   1   0.003 0.01
>TOTAL -
   -  44.228-
```
**PrunePathStrategy off**
```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808   7.56599.84
MatchStep(AND,[[MatchStartStep(a), ProfileStep,... 1
   1   0.007 0.10
  MatchStartStep(a)  808
 808   5.726
  VertexStep(IN,[sungBy],vertex) 501
 499   9.532
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(a)2
   2   0.007
  VertexStep(IN,[sungBy],vertex) 156
 156   1.803
  

[GitHub] tinkerpop issue #358: TINKERPOP-1254 Support dropping traverser path informa...

2016-07-10 Thread twilmes
Github user twilmes commented on the issue:

https://github.com/apache/tinkerpop/pull/358
  
I made a small update to `ReferencePath` to create new label Sets when a 
patch is detached.  This had been causing issues where the first set of labels 
for a path where being shared across `MutablePaths` after detachment.  A label 
would be removed from one, and therefore all of the traversers that had that 
label `Set` in their path, would be affected.

The `PathProcessors` are now respecting keepLabels null and labels are not 
dropped if `PrunePathStrategy` is not applied.

**PrunePathStrategy on**
```
g.V().match(
as("a").in("sungBy").as("b"),
as("a").in("sungBy").as("c"),
as("b").out("writtenBy").as("d"),
as("c").out("writtenBy").as("e"),
as("d").has("name", "George_Harrison"),
as("e").has("name", "Bob_Marley")).select("a").count().profile()

Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808  44.21799.97
MatchStep(AND,[[MatchStartStep(a), ProfileStep,... 1
   1   0.004 0.01
  MatchStartStep(a)  808
 808  43.517
  VertexStep(IN,[sungBy],vertex) 501
 499  20.323
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(a)2
   2   0.006
  VertexStep(IN,[sungBy],vertex) 156
 156   2.129
  MatchEndStep(c) (profiling ignored)   
   0.000
  MatchStartStep(b)  501
 499   5.126
  VertexStep(OUT,[writtenBy],vertex) 509
 504   3.423
  MatchEndStep(d) (profiling ignored)   
   0.000
  MatchStartStep(c)  156
 156   1.083
  VertexStep(OUT,[writtenBy],vertex) 157
 157   1.029
  MatchEndStep(e) (profiling ignored)   
   0.000
  MatchStartStep(d)  509
 266   1.685
  HasStep([name.eq(George_Harrison)])  2
   2   0.002
  MatchEndStep (profiling ignored)  
   0.000
  MatchStartStep(e)  157
  57   0.391
  HasStep([name.eq(Bob_Marley)])   1
   1   0.001
  MatchEndStep (profiling ignored)  
   0.000
SelectOneStep(a)   1
   1   0.003 0.01
CountGlobalStep1
   1   0.003 0.01
>TOTAL -
   -  44.228-
```
**PrunePathStrategy off**
```
Traversal Metrics
Step   Count  
Traversers   Time (ms)% Dur

=
GraphStep(vertex,[]) 808
 808   7.56599.84
MatchStep(AND,[[MatchStartStep(a), ProfileStep,... 1
   1   0.007 0.10
  MatchStartStep(a)  808
 808   5.726
  VertexStep(IN,[sungBy],vertex) 501
 499   9.532
  MatchEndStep(b) (profiling ignored)   
   0.000
  MatchStartStep(a)2
   2   0.007
  VertexStep(IN,[sungBy],vertex) 156
 156   1.803
  MatchEndStep(c) (profiling ignored)   
   0.000
  MatchStartStep(b)  501
 499   3.221
  VertexStep(OUT,[writtenBy],vertex)  

[jira] [Commented] (TINKERPOP-1360) intermittent error in spark-gremlin integration test

2016-07-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369653#comment-15369653
 ] 

ASF GitHub Bot commented on TINKERPOP-1360:
---

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




> intermittent error in spark-gremlin integration test
> 
>
> Key: TINKERPOP-1360
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1360
> Project: TinkerPop
>  Issue Type: Bug
>  Components: test-suite
>Affects Versions: 3.1.2-incubating
>Reporter: Jason Plurad
>Assignee: Jason Plurad
>Priority: Minor
>
> This error intermittently comes up during the Spark integration tests
> {noformat}
> Tests run: 457, Failures: 1, Errors: 0, Skipped: 150, Time elapsed: 110.068 
> sec <<< FAILURE! - in 
> org.apache.tinkerpop.gremlin.spark.process.computer.SparkGraphComputerProcessIntegrateTest
> g_V_hasXageX_propertiesXnameX(org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest$Traversals)
>   Time elapsed: 0.185 sec  <<< FAILURE!
> java.lang.AssertionError: expected: java.lang.Integer<6> but was: 
> java.lang.Long<6>
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.failNotEquals(Assert.java:834)
>   at org.junit.Assert.assertEquals(Assert.java:118)
>   at org.junit.Assert.assertEquals(Assert.java:144)
>   at 
> org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest.g_V_hasXageX_propertiesXnameX(PropertiesTest.java:103)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:497)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
>   at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:53)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:37)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at org.junit.runners.Suite.runChild(Suite.java:128)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:212)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:50)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(P

[GitHub] tinkerpop pull request #361: TINKERPOP-1360: compare vertex property ids as ...

2016-07-10 Thread pluradj
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.
---


[jira] [Created] (TINKERPOP-1365) Eliminate Random.nextBoolean() usage in tests

2016-07-10 Thread Jason Plurad (JIRA)
Jason Plurad created TINKERPOP-1365:
---

 Summary: Eliminate Random.nextBoolean() usage in tests
 Key: TINKERPOP-1365
 URL: https://issues.apache.org/jira/browse/TINKERPOP-1365
 Project: TinkerPop
  Issue Type: Improvement
  Components: test-suite
Affects Versions: 3.1.2-incubating, 3.2.0-incubating
Reporter: Jason Plurad


HadoopGraphProvider and SparkHadoopGraphProvider use RANDOM.nextBoolean() in an 
attempt to get coverage over different load scenarios. In practice, this ends 
up causing nondeterministic execution of the test suite, which can mask real 
errors lingering in the code or test code.

See https://issues.apache.org/jira/browse/TINKERPOP-1360




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TINKERPOP-1360) intermittent error in spark-gremlin integration test

2016-07-10 Thread stephen mallette (JIRA)

[ 
https://issues.apache.org/jira/browse/TINKERPOP-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15369562#comment-15369562
 ] 

stephen mallette commented on TINKERPOP-1360:
-

"Random" is really bad. We need to figure out how to test all the options we 
need to test without that - this isn't the first time it's caused problems like 
this. I think it may take a breaking change to the tests to fix it - probably 
something for 3.3.x.

> intermittent error in spark-gremlin integration test
> 
>
> Key: TINKERPOP-1360
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1360
> Project: TinkerPop
>  Issue Type: Bug
>  Components: test-suite
>Affects Versions: 3.1.2-incubating
>Reporter: Jason Plurad
>Assignee: Jason Plurad
>Priority: Minor
>
> This error intermittently comes up during the Spark integration tests
> {noformat}
> Tests run: 457, Failures: 1, Errors: 0, Skipped: 150, Time elapsed: 110.068 
> sec <<< FAILURE! - in 
> org.apache.tinkerpop.gremlin.spark.process.computer.SparkGraphComputerProcessIntegrateTest
> g_V_hasXageX_propertiesXnameX(org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest$Traversals)
>   Time elapsed: 0.185 sec  <<< FAILURE!
> java.lang.AssertionError: expected: java.lang.Integer<6> but was: 
> java.lang.Long<6>
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.failNotEquals(Assert.java:834)
>   at org.junit.Assert.assertEquals(Assert.java:118)
>   at org.junit.Assert.assertEquals(Assert.java:144)
>   at 
> org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertiesTest.g_V_hasXageX_propertiesXnameX(PropertiesTest.java:103)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:497)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
>   at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:53)
>   at 
> org.apache.tinkerpop.gremlin.process.GremlinProcessRunner.runChild(GremlinProcessRunner.java:37)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at org.junit.runners.Suite.runChild(Suite.java:128)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:212)
>   at 
> org.apache.tinkerpop.gremlin.AbstractGremlinSuite.runChild(AbstractGremlinSuite.java:50)
>   at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>   at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
>   at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
>   at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> {noformat}
> Reproduce steps:
> {noformat}
> mvn verify -q -DskipIntegrationTests=false -pl spark-gremlin
> {n