[GitHub] tinkerpop pull request #449: TINKERPOP-1488: Make LazyBarrierStrategy part o...
GitHub user okram opened a pull request: https://github.com/apache/tinkerpop/pull/449 TINKERPOP-1488: Make LazyBarrierStrategy part of the default TraversalStrategies https://issues.apache.org/jira/browse/TINKERPOP-1488 `LazyBarrierStrategy` is now a default `OptimizationStrategy`. Rewrote `LazyBarrierStrategy` and with @dkuppitz's help, we were able to make all tested traversals either equal or faster than without `LazyBarrierStrategy`. This is a really cool optimization. ``` gremlin> graph = TinkerGraph.open() ==>tinkergraph[vertices:0 edges:0] gremlin> graph.io(gryo()).readGraph('data/grateful-dead.kryo') ==>null gremlin> gremlin> g1 = graph.traversal().withoutStrategies(LazyBarrierStrategy.class) ==>graphtraversalsource[tinkergraph[vertices:808 edges:8049], standard] gremlin> g2 = graph.traversal() ==>graphtraversalsource[tinkergraph[vertices:808 edges:8049], standard] gremlin> gremlin> clock(10){g1.V().out().in().out().count().iterate()} ==>1073.515044999 gremlin> clock(10){g2.V().out().in().out().count().iterate()} ==>8.8109061 gremlin> gremlin> clock(100){g1.V().out().out().count().iterate()} ==>18.75418462 gremlin> clock(100){g2.V().out().out().count().iterate()} ==>2.04183101 gremlin> gremlin> clock(100){g1.V().out().values('performances').count().iterate()} ==>1.67867484 gremlin> clock(100){g2.V().out().values('performances').count().iterate()} ==>1.42926969 gremlin> gremlin> clock(100){g1.V().out().values('performances').is(gt(10)).iterate()} ==>1.76701077 gremlin> clock(100){g2.V().out().values('performances').is(gt(10)).iterate()} ==>1.47417542 gremlin> gremlin> clock(100){g1.V().has('name','Garcia').out().out().iterate()} ==>0.237428398 gremlin> clock(100){g2.V().has('name','Garcia').out().out().iterate()} ==>0.240219717 gremlin> gremlin> clock(100){g1.V().as('a').out('sungBy').in('sungBy').where(neq('a')).iterate()} ==>26.31896202 gremlin> clock(100){g2.V().as('a').out('sungBy').in('sungBy').where(neq('a')).iterate()} ==>21.81168350998 gremlin> gremlin> clock(100){g1.V().has('name','DARK STAR').out('followedBy').aggregate('a').out('followedBy').in('followedBy').where(not(within('a'))).groupCount().by('name').iterate()} ==>24.6694559 gremlin> clock(100){g2.V().has('name','DARK STAR').out('followedBy').aggregate('a').out('followedBy').in('followedBy').where(not(within('a'))).groupCount().by('name').iterate()} ==>1.93767078 ``` If this is VOTE'd in then, I will merge it after TINKERPOP-1455 is merged so we can do parameterization via `Configuration`. VOTE +1. You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1488 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/449.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 #449 commit 5f0e8438c92555b79e7387c10a9ce915b29c8840 Author: Marko A. RodriguezDate: 2016-10-04T22:50:48Z LazyBarrierStrategy is now a default strategy and is smart about labels, retractions, flatMaps, barriers, etc. In short, all the queries that were given to it are either equal in speed or faster. commit 658630a9785952cada916377bb06283e9e85c6c4 Author: Marko A. Rodriguez Date: 2016-10-04T23:11:51Z ProfileTests and LazyBArrierStrategy don't play well with each other because ProfileTests expect certain bulks/counts/etc. Thus, if testing and there is ProfileStep, then the strategy is not applied. --- 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-1488) Make LazyBarrierStrategy part of the default TraversalStrategies
Marko A. Rodriguez created TINKERPOP-1488: - Summary: Make LazyBarrierStrategy part of the default TraversalStrategies Key: TINKERPOP-1488 URL: https://issues.apache.org/jira/browse/TINKERPOP-1488 Project: TinkerPop Issue Type: Improvement Components: process Affects Versions: 3.2.2 Reporter: Marko A. Rodriguez We have had {{LazyBarrierStrategy}} in TinkerPop since perhaps the 3.0 release. However, it was not part of the default strategies. Moreover, its a finalization strategy when it should be an {{OptimizationStrategy}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[DISCUSS] IO Reference Documentation
I just added a new book to our compendium of documentation - IO Reference. http://tinkerpop.apache.org/docs/3.2.3-SNAPSHOT/dev/io/#_io_reference It provides lots of samples (especially around GraphSON which will be helpful to GLVs i think) and some additional details that aren't in our standard reference documentation, which is a bit more user facing whereas this IO Reference is more for developers.I purposely didn't want to add this content to our Reference Docs as it would just blow out the length of it in a pretty big way. I probably need to polish up the Reference Docs now a bit more in the context of this, but that can happen on the way through code freeze. I think there's more details I could add, but this is a good stopping point for purposes of general review.
[GitHub] tinkerpop pull request #448: Python glv graphson update
GitHub user aholmberg opened a pull request: https://github.com/apache/tinkerpop/pull/448 Python glv graphson update I have a series of gremlinpython graphson serdes simplifications, followed by a refactor to make type mappings an instance variable, rather than a module-level mapping. I did not attempt to preserve the module API since `gremlinpython` has not entered GA release status. I welcome any feedback. You can merge this pull request into a Git repository by running: $ git pull https://github.com/aholmberg/tinkerpop python-glv-graphson-update Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/448.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 #448 commit 35f11792254235c9414d8297ef9d67fbad1076ee Author: Adam HolmbergDate: 2016-09-23T19:09:03Z gremlinpython: simplify graphson serdes functions commit c461e13f2bf16cffe19daa50212f70ff50634f1e Author: Adam Holmberg Date: 2016-09-23T19:38:23Z gremlinpython: remove keyword shadows in graphson commit ff876a0c612ed84d1d4013c38209c48efe9c6dfa Author: Adam Holmberg Date: 2016-09-23T20:04:04Z gremlinpython: more simplification of graphson routines commit 91c5830041dae556ef823cfa6584f1e22d2b7179 Author: Adam Holmberg Date: 2016-09-30T18:22:37Z simplification in graphson io commit 20226eff3ee4f9eefef3dc91f2d516ed47af0830 Author: Adam Holmberg Date: 2016-10-04T18:56:21Z gremlinpython: refactor GraphsonIO to use instance type maps --- 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 #439: TINKERPOP-980: added sysv and systemd init scripts
Github user PommeVerte commented on the issue: https://github.com/apache/tinkerpop/pull/439 I'm currently on some ressource intensive tasks so it's hard for me to bounce back and forth between projects but I would like to give this a run on ubuntu 14.04. I suspect that sysV might work out of the box with a simple change in commands. Will give this a spin asap. --- 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-980) Add a service script or daemon mode in the distribution
[ https://issues.apache.org/jira/browse/TINKERPOP-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15546241#comment-15546241 ] ASF GitHub Bot commented on TINKERPOP-980: -- Github user PommeVerte commented on the issue: https://github.com/apache/tinkerpop/pull/439 I'm currently on some ressource intensive tasks so it's hard for me to bounce back and forth between projects but I would like to give this a run on ubuntu 14.04. I suspect that sysV might work out of the box with a simple change in commands. Will give this a spin asap. > Add a service script or daemon mode in the distribution > --- > > Key: TINKERPOP-980 > URL: https://issues.apache.org/jira/browse/TINKERPOP-980 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Jeremy Hanna >Assignee: Dylan Millikin >Priority: Minor > Labels: breaking > > Based on this discussion, it looks like there was an example from [~dkuppitz] > on how to create a gremlin server service on linux: > https://groups.google.com/forum/#!msg/gremlin-users/uA48IQ3YJcw/4KnUKIS8HI4J > Here is a link to the gist for the service: > https://gist.github.com/dkuppitz/20bda51e3465a612cd9b > I think it would be great to include this or a way to daemonize the server > into the tinkerpop distribution. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop pull request #447: TINKERPOP-1455: Provide String-based withStrate...
GitHub user okram opened a pull request: https://github.com/apache/tinkerpop/pull/447 TINKERPOP-1455: Provide String-based withStrategy()/withoutStrategy() for language variant usage https://issues.apache.org/jira/browse/TINKERPOP-1455 Added TraversalSource.withStrategy(String, Object...) and TraversalSource.withoutStrategy(String). This allows Gremlin language variants (e.g. Gremlin-Python) to add and remove strategies from a traversal source. Prior to this moment, strategy addition/removal was via strategy instances (Java objects) and classes (Class objects). That is not language variants friendly. This branch is backwards compatible. If a `TraversalStrategy` does not have a builder and exposes a static `instance()`-method, then `g.withStrategy('com.blah.MyStrategy')` will work as expected. If a `TraversalStrategy` does have a builder (that is, can be configured), then it should expose a static `create(Configuration)`-method. Note Gremlin language variants could not use `withStrategies()` prior to this and thus, this addition is backwards compatible. Finally, `TraversalSource.withComputer(Object...)` was added as well for the same reasons. ``` >>> g = g.withStrategy('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy','vertices',hasLabel('person'),'edges',has('weight',gt(0.5))) >>> g.V().name.toList() [u'marko', u'vadas', u'josh', u'peter'] ``` The CHANGELOG, gremlin-variants.asciidoc, and upgrade doc have all been updated accordingly. VOTE +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1455 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/447.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 #447 commit e6e59e417f119c1b71a43141fce04cb212bc0a58 Author: Marko A. RodriguezDate: 2016-10-04T14:37:07Z first push. We now have TraversalSource.withStrategy(String, Object...) and TraversalSource.withoutStrategy(String). Added a test case to Gremlin-Python that uses SubgraphStrategy and it works :). commit 95557bf3aac279282e3f3779d68ce195bd4ca058 Author: Marko A. Rodriguez Date: 2016-10-04T16:26:12Z added static create(Configuration) methods to all Builder-based strategies except EventStrategy as that requires Java objects :(. Deprecated PartitionStrategy.Builder.addReadParition() in favor of readParitions(String...). Computer now has a Configuration-based constructor and corresponding withComputer(Object...) arguments. commit 20dec2076b79441c7dcf06827014ace72fcaea6c Author: Marko A. Rodriguez Date: 2016-10-04T18:15:31Z updated gremlin-variants.asciidoc with new withStrategy()/withoutStrategy() method discussion. Built docs. Success. --- 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-1455) Provide String-based withStrategy()/withoutStrategy() for language variant usage
[ https://issues.apache.org/jira/browse/TINKERPOP-1455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15546200#comment-15546200 ] ASF GitHub Bot commented on TINKERPOP-1455: --- GitHub user okram opened a pull request: https://github.com/apache/tinkerpop/pull/447 TINKERPOP-1455: Provide String-based withStrategy()/withoutStrategy() for language variant usage https://issues.apache.org/jira/browse/TINKERPOP-1455 Added TraversalSource.withStrategy(String, Object...) and TraversalSource.withoutStrategy(String). This allows Gremlin language variants (e.g. Gremlin-Python) to add and remove strategies from a traversal source. Prior to this moment, strategy addition/removal was via strategy instances (Java objects) and classes (Class objects). That is not language variants friendly. This branch is backwards compatible. If a `TraversalStrategy` does not have a builder and exposes a static `instance()`-method, then `g.withStrategy('com.blah.MyStrategy')` will work as expected. If a `TraversalStrategy` does have a builder (that is, can be configured), then it should expose a static `create(Configuration)`-method. Note Gremlin language variants could not use `withStrategies()` prior to this and thus, this addition is backwards compatible. Finally, `TraversalSource.withComputer(Object...)` was added as well for the same reasons. ``` >>> g = g.withStrategy('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy','vertices',hasLabel('person'),'edges',has('weight',gt(0.5))) >>> g.V().name.toList() [u'marko', u'vadas', u'josh', u'peter'] ``` The CHANGELOG, gremlin-variants.asciidoc, and upgrade doc have all been updated accordingly. VOTE +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1455 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/447.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 #447 commit e6e59e417f119c1b71a43141fce04cb212bc0a58 Author: Marko A. RodriguezDate: 2016-10-04T14:37:07Z first push. We now have TraversalSource.withStrategy(String, Object...) and TraversalSource.withoutStrategy(String). Added a test case to Gremlin-Python that uses SubgraphStrategy and it works :). commit 95557bf3aac279282e3f3779d68ce195bd4ca058 Author: Marko A. Rodriguez Date: 2016-10-04T16:26:12Z added static create(Configuration) methods to all Builder-based strategies except EventStrategy as that requires Java objects :(. Deprecated PartitionStrategy.Builder.addReadParition() in favor of readParitions(String...). Computer now has a Configuration-based constructor and corresponding withComputer(Object...) arguments. commit 20dec2076b79441c7dcf06827014ace72fcaea6c Author: Marko A. Rodriguez Date: 2016-10-04T18:15:31Z updated gremlin-variants.asciidoc with new withStrategy()/withoutStrategy() method discussion. Built docs. Success. > Provide String-based withStrategy()/withoutStrategy() for language variant > usage > > > Key: TINKERPOP-1455 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1455 > Project: TinkerPop > Issue Type: Improvement > Components: language-variant, process >Affects Versions: 3.2.2 >Reporter: Marko A. Rodriguez >Assignee: Marko A. Rodriguez > > Right now {{withStrategies()}} is not supported by Gremlin-Python. Why? > Because strategies are created via Java and thus you can't do stuff like: > {code} > g.withStrategies(SubgraphStrategy.build()...create()) > {code} > Now, we have strategies that we have made "native" to > {{GraphTraversalSource}} by way of {{withXXX}}. For example: > {{withSideEffect()}}, {{withSack()}}, {{withRemote()}}, {{withPath()}}, etc. > In order to generally support any strategy created by a user for use from a > language variant, we should support lambda based strategies. E.g.: > {code} > g.withStrategies(lambda : "SubgraphStrategy.build()...create()") > {code} > Like any other lambda, it is executed server side using the respective > {{ScriptEngine}}. > Next, {{withoutStrategies()}} should support {{String...}} so you can do: > {code} > g.withoutStrategies("com.stuff.MyStrategy", "com.stuff.MyOtherStrategy") > {code} > ..instead of having to pass in the {{Class}} object. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Closed] (TINKERPOP-1467) Improve close() operations on the Java driver
[ https://issues.apache.org/jira/browse/TINKERPOP-1467?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1467. --- Resolution: Fixed > Improve close() operations on the Java driver > -- > > Key: TINKERPOP-1467 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1467 > Project: TinkerPop > Issue Type: Bug > Components: driver >Affects Versions: 3.1.3 >Reporter: stephen mallette >Assignee: stephen mallette > Fix For: 3.1.5, 3.2.3 > > > A few big problems: > 1. Client will hang if submitting a request after {{close()}} > 2. Multiple calls to {{close()}} hangs periodically > 3. Closing the {{Cluster}} doesn't attempt to clean up open {{Client}} > instances. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (TINKERPOP-1467) Improve close() operations on the Java driver
[ https://issues.apache.org/jira/browse/TINKERPOP-1467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15546098#comment-15546098 ] ASF GitHub Bot commented on TINKERPOP-1467: --- Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/442 > Improve close() operations on the Java driver > -- > > Key: TINKERPOP-1467 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1467 > Project: TinkerPop > Issue Type: Bug > Components: driver >Affects Versions: 3.1.3 >Reporter: stephen mallette >Assignee: stephen mallette > Fix For: 3.1.5, 3.2.3 > > > A few big problems: > 1. Client will hang if submitting a request after {{close()}} > 2. Multiple calls to {{close()}} hangs periodically > 3. Closing the {{Cluster}} doesn't attempt to clean up open {{Client}} > instances. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop pull request #442: TINKERPOP-1467 Corrected a number of problems i...
Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/442 --- 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-1467) Improve close() operations on the Java driver
[ https://issues.apache.org/jira/browse/TINKERPOP-1467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15546095#comment-15546095 ] ASF GitHub Bot commented on TINKERPOP-1467: --- Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/441 > Improve close() operations on the Java driver > -- > > Key: TINKERPOP-1467 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1467 > Project: TinkerPop > Issue Type: Bug > Components: driver >Affects Versions: 3.1.3 >Reporter: stephen mallette >Assignee: stephen mallette > Fix For: 3.1.5, 3.2.3 > > > A few big problems: > 1. Client will hang if submitting a request after {{close()}} > 2. Multiple calls to {{close()}} hangs periodically > 3. Closing the {{Cluster}} doesn't attempt to clean up open {{Client}} > instances. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop pull request #441: TINKERPOP-1467 Corrected a number of problems i...
Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/441 --- 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] [Assigned] (TINKERPOP-1486) Improve API of RemoteConnection
[ https://issues.apache.org/jira/browse/TINKERPOP-1486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1486: --- Assignee: stephen mallette > Improve API of RemoteConnection > --- > > Key: TINKERPOP-1486 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1486 > Project: TinkerPop > Issue Type: Improvement > Components: language-variant, process >Affects Versions: 3.2.2 >Reporter: Kevin Gallardo >Assignee: stephen mallette > > Currently an implementor that wants to define a _RemoteConnection_ > implementation must return a _RemoteTraversal_ object from the > {{RemoteConnection#submit(Bytecode)}} method. > Thus it needs to implement a specific _RemoteTraversal_ class. When > implementing a _RemoteTraversal_ we need to implement the methods {{next()}} > and {{hasNext()}}. However these methods never seem to get called. Moreover, > we need to implement the method {{nextTraverser()}} which is the one that is > actually going to get called, but the method is not abstract and it is not > natural to understand that this particular method needs to be implemented. > It seems like all the other methods of _RemoteTraversal_ are never called as > well since it is only used in _RemoteStep_, which only calls > {{nextTraverser()}}. I wonder if we could stop using the _RemoteTraversal_ > and instead have the {{submit()}} method return a simple abstract class that > has: > - abstract method {{nextTraverser()}} returns _Traverser_ > - abstract method {{getSideEffects()}} returns _SideEffects_ > - possibly extend it later with others -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (TINKERPOP-1486) Improve API of RemoteConnection
[ https://issues.apache.org/jira/browse/TINKERPOP-1486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1486: Component/s: (was: io) Issue Type: Improvement (was: Bug) > Improve API of RemoteConnection > --- > > Key: TINKERPOP-1486 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1486 > Project: TinkerPop > Issue Type: Improvement > Components: language-variant, process >Affects Versions: 3.2.2 >Reporter: Kevin Gallardo > > Currently an implementor that wants to define a _RemoteConnection_ > implementation must return a _RemoteTraversal_ object from the > {{RemoteConnection#submit(Bytecode)}} method. > Thus it needs to implement a specific _RemoteTraversal_ class. When > implementing a _RemoteTraversal_ we need to implement the methods {{next()}} > and {{hasNext()}}. However these methods never seem to get called. Moreover, > we need to implement the method {{nextTraverser()}} which is the one that is > actually going to get called, but the method is not abstract and it is not > natural to understand that this particular method needs to be implemented. > It seems like all the other methods of _RemoteTraversal_ are never called as > well since it is only used in _RemoteStep_, which only calls > {{nextTraverser()}}. I wonder if we could stop using the _RemoteTraversal_ > and instead have the {{submit()}} method return a simple abstract class that > has: > - abstract method {{nextTraverser()}} returns _Traverser_ > - abstract method {{getSideEffects()}} returns _SideEffects_ > - possibly extend it later with others -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (TINKERPOP-1487) Reference Documentation for IO
stephen mallette created TINKERPOP-1487: --- Summary: Reference Documentation for IO Key: TINKERPOP-1487 URL: https://issues.apache.org/jira/browse/TINKERPOP-1487 Project: TinkerPop Issue Type: Improvement Components: documentation Affects Versions: 3.2.2 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.2.3 Provide for a more detailed set of documentation for IO (graphml, gryo, graphson). Include more samples. Don't think this should be part of the existing "reference documentation" because it's going to bloat them in a major way given all the samples that should be present. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (TINKERPOP-1486) Improve API of RemoteConnection
Kevin Gallardo created TINKERPOP-1486: - Summary: Improve API of RemoteConnection Key: TINKERPOP-1486 URL: https://issues.apache.org/jira/browse/TINKERPOP-1486 Project: TinkerPop Issue Type: Bug Components: io, language-variant, process Affects Versions: 3.2.2 Reporter: Kevin Gallardo Currently an implementor that wants to define a _RemoteConnection_ implementation must return a _RemoteTraversal_ object from the {{RemoteConnection#submit(Bytecode)}} method. Thus it needs to implement a specific _RemoteTraversal_ class. When implementing a _RemoteTraversal_ we need to implement the methods {{next()}} and {{hasNext()}}. However these methods never seem to get called. Moreover, we need to implement the method {{nextTraverser()}} which is the one that is actually going to get called, but the method is not abstract and it is not natural to understand that this particular method needs to be implemented. It seems like all the other methods of _RemoteTraversal_ are never called as well since it is only used in _RemoteStep_, which only calls {{nextTraverser()}}. I wonder if we could stop using the _RemoteTraversal_ and instead have the {{submit()}} method return a simple abstract class that has: - abstract method {{nextTraverser()}} returns _Traverser_ - abstract method {{getSideEffects()}} returns _SideEffects_ - possibly extend it later with others -- This message was sent by Atlassian JIRA (v6.3.4#6332)
Re: [DISCUSS] ASF Board Draft Report - October 2016
Yeah looking great! On Tue, Oct 4, 2016 at 10:39 AM, Marko Rodriguezwrote: > Diamn — that is one solid report. > > Marko. > > http://markorodriguez.com > > > > > On Oct 4, 2016, at 8:36 AM, Stephen Mallette > wrote: > > > > A lot of stuff seems to have happened since our last report - did I miss > > anything? > > > > > -- > > > > ## Description: > > Apache TinkerPop is a graph computing framework for both graph databases > > (OLTP) and graph analytic systems (OLAP). > > > > ## Activity: > > TinkerPop has added a new member to the PMC in Jason Plurad and a new > > committer in David Brown. > > > > TinkerPop released 3.1.4 and 3.2.2. 3.2.2 contains gremlin-python[1], > > which > > officially opens TinkerPop up to the Python community. We tend to think > > of Python as the most used language for TinkerPop outside of the JVM so > > having native support for it should help expand usage. October will see > > releases 3.1.5 and 3.2.3. These two releases are mostly bug fixes and > > minor > > usability improvements. We expect to continue to maintain both of these > > lines of code (bug fixes for 3.1.4 and ongoing development of 3.2.2), but > > intend to begin work on a new major line in 3.3.0 in the coming weeks. > > > > In an effort to share the technical knowledge of "releasing TinkerPop", > > we've > > started to share the work of that process. While we've always had our > > release > > process documented[2] and a single release manager can handle releases, > > we've determined it better (when possible) to have one release manager > per > > release line. Our initial trial with one release manager per version, on > > the > > previous release, worked well. We hope to continue with this approach for > > future releases. > > > > Promotionally speaking, there have been a number of talks at conferences > > on, > > or related, to TinkerPop. As a sample, here are the talks given by PMC > > members: > > > > Graph Computing with Apache TinkerPop - Dr. Marko Rodriguez [3] > > Graph Processing with Titan and Scylla - Jason Plurad [4] > > > > On the brand management front, it was noted by a PMC member (Jason Plurad > > had just been voted in almost to the day he made the report) that there > > was > > an individual selling products (baby clothes, mugs, t-shirts, etc.) on > > Amazon > > with TinkerPop graphics on them. Soon after, a second company was also > > noted > > selling similar products on an independent site. Neither, had permission > > from > > Apache to do that. After some discussion with Trademarks, the PMC chair > > sent > > notice to both sites requesting that they acknowledge the marks in their > > product description. No response was received from the seller on Amazon, > > but > > all products were quickly removed. No response was received from the > second > > seller, but on greater inspection of the site, it doesn't really appear > to > > be > > terribly active or maintained. Next steps with respect to this seller > have > > yet to be discussed. > > > > ## Issues: > > There are no issues requiring board attention at this time. > > > > ## Releases: > > - 3.1.4 (September 6, 2016) > > - 3.2.2 (September 6, 2016) > > > > ## PMC/Committer: > > > > - Last PMC addition was Jason Plurad - August 2016 > > - Last committer addition was David Brown - August 2016 > > > > ## Links > > > > [1] http://tinkerpop.apache.org/docs/current/reference/#gremlin-python > > [2] http://tinkerpop.apache.org/docs/current/dev/developer/#_ > release_process > > [3] https://www.youtube.com/watch?v=tLR-I53Gl9g > > [4] https://www.youtube.com/watch?v=RllAy9OjzIo > >
Re: [DISCUSS] breaking gremlin-server.sh just a little
The breaking in change in 3.2.2 was a mistake that wasn't noticed in review. Typically, that shouldn't happen. On Tue, Oct 4, 2016 at 11:13 AM, Dylan Millikinwrote: > I would wait for 3.3.0. I'm a little confused about the versions at the > moment as I thought our minor version 3.2.x should not be breaking (but > that doesn't seem to be the case since 3.2.2 was breaking compared to > 3.2.0, though maybe that was a mishap). > > Other than that the PR is a really nice one. > > On Tue, Oct 4, 2016 at 8:28 AM, Stephen Mallette > wrote: > > > The more I think about this, the more I think I would just prefer to > merge > > this on 3.3.0. We open that branch this weekend, so it's not as though > > we're pushing PR out too far. Not sure if that changes anyone's silence > on > > this one, but that's what I'm thinking at this point. > > > > On Fri, Sep 30, 2016 at 12:30 PM, Stephen Mallette > > > wrote: > > > > > This is a very neat change I think - our gremlin-server.sh looks pretty > > > legit now. I'd just add one clarification that the proposal here is to > > push > > > this breaking change into the next release of 3.2.3. the question is > > > whether we wait for 3.3.0 which we would presumably start on pretty > soon > > > (couple of weeks) to avoid pushing a breaking change into the 3.2.x > line. > > > any thoughts on the matter? > > > > > > On Fri, Sep 30, 2016 at 12:22 PM, Robert Dale > wrote: > > > > > >> In relation to PR https://github.com/apache/tinkerpop/pull/439 , I'm > > >> proposing that gremlin-server.sh will be an init script. As an init > > >> script, the expectation of not providing any parameters is to display > > >> usage/help: > > >> > > >> Usage: gremlin-server.sh {start|stop|restart|status|console|install > > >> |} > > >> > > >> This breaks the current usage of starting the server in the foreground > > >> with the default yaml file. Instead, a user would provide the command > > >> `console`. > > >> > > >> I have tried to keep other backwards compatibility by accepting `-i` > > >> (aka `install`) and a yaml file. If the yaml file is the only > > >> parameter, the server will continue to start in the foreground. > > >> > > >> If there are no objections, then @spmallette will assume lazy > > >> consensus after 72 hours and do his thing. I'm guessing. ;-) > > >> > > >> -- > > >> Robert Dale > > >> > > > > > > > > >
Re: [DISCUSS] breaking gremlin-server.sh just a little
I would wait for 3.3.0. I'm a little confused about the versions at the moment as I thought our minor version 3.2.x should not be breaking (but that doesn't seem to be the case since 3.2.2 was breaking compared to 3.2.0, though maybe that was a mishap). Other than that the PR is a really nice one. On Tue, Oct 4, 2016 at 8:28 AM, Stephen Mallettewrote: > The more I think about this, the more I think I would just prefer to merge > this on 3.3.0. We open that branch this weekend, so it's not as though > we're pushing PR out too far. Not sure if that changes anyone's silence on > this one, but that's what I'm thinking at this point. > > On Fri, Sep 30, 2016 at 12:30 PM, Stephen Mallette > wrote: > > > This is a very neat change I think - our gremlin-server.sh looks pretty > > legit now. I'd just add one clarification that the proposal here is to > push > > this breaking change into the next release of 3.2.3. the question is > > whether we wait for 3.3.0 which we would presumably start on pretty soon > > (couple of weeks) to avoid pushing a breaking change into the 3.2.x line. > > any thoughts on the matter? > > > > On Fri, Sep 30, 2016 at 12:22 PM, Robert Dale wrote: > > > >> In relation to PR https://github.com/apache/tinkerpop/pull/439 , I'm > >> proposing that gremlin-server.sh will be an init script. As an init > >> script, the expectation of not providing any parameters is to display > >> usage/help: > >> > >> Usage: gremlin-server.sh {start|stop|restart|status|console|install > >> |} > >> > >> This breaks the current usage of starting the server in the foreground > >> with the default yaml file. Instead, a user would provide the command > >> `console`. > >> > >> I have tried to keep other backwards compatibility by accepting `-i` > >> (aka `install`) and a yaml file. If the yaml file is the only > >> parameter, the server will continue to start in the foreground. > >> > >> If there are no objections, then @spmallette will assume lazy > >> consensus after 72 hours and do his thing. I'm guessing. ;-) > >> > >> -- > >> Robert Dale > >> > > > > >
[DISCUSS] ASF Board Draft Report - October 2016
A lot of stuff seems to have happened since our last report - did I miss anything? -- ## Description: Apache TinkerPop is a graph computing framework for both graph databases (OLTP) and graph analytic systems (OLAP). ## Activity: TinkerPop has added a new member to the PMC in Jason Plurad and a new committer in David Brown. TinkerPop released 3.1.4 and 3.2.2. 3.2.2 contains gremlin-python[1], which officially opens TinkerPop up to the Python community. We tend to think of Python as the most used language for TinkerPop outside of the JVM so having native support for it should help expand usage. October will see releases 3.1.5 and 3.2.3. These two releases are mostly bug fixes and minor usability improvements. We expect to continue to maintain both of these lines of code (bug fixes for 3.1.4 and ongoing development of 3.2.2), but intend to begin work on a new major line in 3.3.0 in the coming weeks. In an effort to share the technical knowledge of "releasing TinkerPop", we've started to share the work of that process. While we've always had our release process documented[2] and a single release manager can handle releases, we've determined it better (when possible) to have one release manager per release line. Our initial trial with one release manager per version, on the previous release, worked well. We hope to continue with this approach for future releases. Promotionally speaking, there have been a number of talks at conferences on, or related, to TinkerPop. As a sample, here are the talks given by PMC members: Graph Computing with Apache TinkerPop - Dr. Marko Rodriguez [3] Graph Processing with Titan and Scylla - Jason Plurad [4] On the brand management front, it was noted by a PMC member (Jason Plurad had just been voted in almost to the day he made the report) that there was an individual selling products (baby clothes, mugs, t-shirts, etc.) on Amazon with TinkerPop graphics on them. Soon after, a second company was also noted selling similar products on an independent site. Neither, had permission from Apache to do that. After some discussion with Trademarks, the PMC chair sent notice to both sites requesting that they acknowledge the marks in their product description. No response was received from the seller on Amazon, but all products were quickly removed. No response was received from the second seller, but on greater inspection of the site, it doesn't really appear to be terribly active or maintained. Next steps with respect to this seller have yet to be discussed. ## Issues: There are no issues requiring board attention at this time. ## Releases: - 3.1.4 (September 6, 2016) - 3.2.2 (September 6, 2016) ## PMC/Committer: - Last PMC addition was Jason Plurad - August 2016 - Last committer addition was David Brown - August 2016 ## Links [1] http://tinkerpop.apache.org/docs/current/reference/#gremlin-python [2] http://tinkerpop.apache.org/docs/current/dev/developer/#_release_process [3] https://www.youtube.com/watch?v=tLR-I53Gl9g [4] https://www.youtube.com/watch?v=RllAy9OjzIo
Re: [DISCUSS] ASF Board Draft Report - October 2016
Diamn — that is one solid report. Marko. http://markorodriguez.com > On Oct 4, 2016, at 8:36 AM, Stephen Mallettewrote: > > A lot of stuff seems to have happened since our last report - did I miss > anything? > > -- > > ## Description: > Apache TinkerPop is a graph computing framework for both graph databases > (OLTP) and graph analytic systems (OLAP). > > ## Activity: > TinkerPop has added a new member to the PMC in Jason Plurad and a new > committer in David Brown. > > TinkerPop released 3.1.4 and 3.2.2. 3.2.2 contains gremlin-python[1], > which > officially opens TinkerPop up to the Python community. We tend to think > of Python as the most used language for TinkerPop outside of the JVM so > having native support for it should help expand usage. October will see > releases 3.1.5 and 3.2.3. These two releases are mostly bug fixes and > minor > usability improvements. We expect to continue to maintain both of these > lines of code (bug fixes for 3.1.4 and ongoing development of 3.2.2), but > intend to begin work on a new major line in 3.3.0 in the coming weeks. > > In an effort to share the technical knowledge of "releasing TinkerPop", > we've > started to share the work of that process. While we've always had our > release > process documented[2] and a single release manager can handle releases, > we've determined it better (when possible) to have one release manager per > release line. Our initial trial with one release manager per version, on > the > previous release, worked well. We hope to continue with this approach for > future releases. > > Promotionally speaking, there have been a number of talks at conferences > on, > or related, to TinkerPop. As a sample, here are the talks given by PMC > members: > > Graph Computing with Apache TinkerPop - Dr. Marko Rodriguez [3] > Graph Processing with Titan and Scylla - Jason Plurad [4] > > On the brand management front, it was noted by a PMC member (Jason Plurad > had just been voted in almost to the day he made the report) that there > was > an individual selling products (baby clothes, mugs, t-shirts, etc.) on > Amazon > with TinkerPop graphics on them. Soon after, a second company was also > noted > selling similar products on an independent site. Neither, had permission > from > Apache to do that. After some discussion with Trademarks, the PMC chair > sent > notice to both sites requesting that they acknowledge the marks in their > product description. No response was received from the seller on Amazon, > but > all products were quickly removed. No response was received from the second > seller, but on greater inspection of the site, it doesn't really appear to > be > terribly active or maintained. Next steps with respect to this seller have > yet to be discussed. > > ## Issues: > There are no issues requiring board attention at this time. > > ## Releases: > - 3.1.4 (September 6, 2016) > - 3.2.2 (September 6, 2016) > > ## PMC/Committer: > > - Last PMC addition was Jason Plurad - August 2016 > - Last committer addition was David Brown - August 2016 > > ## Links > > [1] http://tinkerpop.apache.org/docs/current/reference/#gremlin-python > [2] http://tinkerpop.apache.org/docs/current/dev/developer/#_release_process > [3] https://www.youtube.com/watch?v=tLR-I53Gl9g > [4] https://www.youtube.com/watch?v=RllAy9OjzIo
[jira] [Commented] (TINKERPOP-980) Add a service script or daemon mode in the distribution
[ https://issues.apache.org/jira/browse/TINKERPOP-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15545257#comment-15545257 ] ASF GitHub Bot commented on TINKERPOP-980: -- Github user robertdale commented on the issue: https://github.com/apache/tinkerpop/pull/439 I just tested with backgrounding the job and killing that. That also still works. > Add a service script or daemon mode in the distribution > --- > > Key: TINKERPOP-980 > URL: https://issues.apache.org/jira/browse/TINKERPOP-980 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Jeremy Hanna >Assignee: Dylan Millikin >Priority: Minor > Labels: breaking > > Based on this discussion, it looks like there was an example from [~dkuppitz] > on how to create a gremlin server service on linux: > https://groups.google.com/forum/#!msg/gremlin-users/uA48IQ3YJcw/4KnUKIS8HI4J > Here is a link to the gist for the service: > https://gist.github.com/dkuppitz/20bda51e3465a612cd9b > I think it would be great to include this or a way to daemonize the server > into the tinkerpop distribution. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop issue #439: TINKERPOP-980: added sysv and systemd init scripts
Github user robertdale commented on the issue: https://github.com/apache/tinkerpop/pull/439 I just tested with backgrounding the job and killing that. That also still works. --- 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-980) Add a service script or daemon mode in the distribution
[ https://issues.apache.org/jira/browse/TINKERPOP-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15545254#comment-15545254 ] ASF GitHub Bot commented on TINKERPOP-980: -- Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/439 oh - right - you had said that. sorry > Add a service script or daemon mode in the distribution > --- > > Key: TINKERPOP-980 > URL: https://issues.apache.org/jira/browse/TINKERPOP-980 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Jeremy Hanna >Assignee: Dylan Millikin >Priority: Minor > Labels: breaking > > Based on this discussion, it looks like there was an example from [~dkuppitz] > on how to create a gremlin server service on linux: > https://groups.google.com/forum/#!msg/gremlin-users/uA48IQ3YJcw/4KnUKIS8HI4J > Here is a link to the gist for the service: > https://gist.github.com/dkuppitz/20bda51e3465a612cd9b > I think it would be great to include this or a way to daemonize the server > into the tinkerpop distribution. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop issue #439: TINKERPOP-980: added sysv and systemd init scripts
Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/439 oh - right - you had said that. sorry --- 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 #439: TINKERPOP-980: added sysv and systemd init scripts
Github user robertdale commented on the issue: https://github.com/apache/tinkerpop/pull/439 That should still work. What won't work is an invocation of just "gremlin-server.sh" without parameters. I didn't find any in the code base nor in the docs (which is highly convenient). --- 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 #439: TINKERPOP-980: added sysv and systemd init scripts
Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/439 It occurred to me that it would seem there must be a place that gremlin-server.sh is used in doc generation - and here it is: https://github.com/apache/tinkerpop/blob/8ab682fef3e3da12904cb0d825abf4cc1ba8235a/docs/preprocessor/preprocess.sh#L84 I assume that command will no longer work with these changes and a fix is needed there? @dkuppitz any other secret areas you know about where gremlin-server.sh is used? --- 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-980) Add a service script or daemon mode in the distribution
[ https://issues.apache.org/jira/browse/TINKERPOP-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15545237#comment-15545237 ] ASF GitHub Bot commented on TINKERPOP-980: -- Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/439 It occurred to me that it would seem there must be a place that gremlin-server.sh is used in doc generation - and here it is: https://github.com/apache/tinkerpop/blob/8ab682fef3e3da12904cb0d825abf4cc1ba8235a/docs/preprocessor/preprocess.sh#L84 I assume that command will no longer work with these changes and a fix is needed there? @dkuppitz any other secret areas you know about where gremlin-server.sh is used? > Add a service script or daemon mode in the distribution > --- > > Key: TINKERPOP-980 > URL: https://issues.apache.org/jira/browse/TINKERPOP-980 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Jeremy Hanna >Assignee: Dylan Millikin >Priority: Minor > Labels: breaking > > Based on this discussion, it looks like there was an example from [~dkuppitz] > on how to create a gremlin server service on linux: > https://groups.google.com/forum/#!msg/gremlin-users/uA48IQ3YJcw/4KnUKIS8HI4J > Here is a link to the gist for the service: > https://gist.github.com/dkuppitz/20bda51e3465a612cd9b > I think it would be great to include this or a way to daemonize the server > into the tinkerpop distribution. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (TINKERPOP-1044) ResponseMessage should contain server-side exception name.
[ https://issues.apache.org/jira/browse/TINKERPOP-1044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15545124#comment-15545124 ] ASF GitHub Bot commented on TINKERPOP-1044: --- Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/440 Sorry for the trouble on running the tests. It's not terribly friendly to Windows as we don't have any core devs who use that OS. Hopefully you can figure out how to get the tests working. Maybe they won't run well with maven, but might run from an IDE like Intellij? > ResponseMessage should contain server-side exception name. > -- > > Key: TINKERPOP-1044 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1044 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.1.0-incubating >Reporter: Bob Briody >Priority: Minor > > When an exception occurs during execution by gremlin server, the > ResponseMessage currently contains the Exception message, but it would also > be helpful to include the Exception class name. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[GitHub] tinkerpop issue #440: TINKERPOP-1044: Gremlin server REST endpoint - Add Exc...
Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/440 Sorry for the trouble on running the tests. It's not terribly friendly to Windows as we don't have any core devs who use that OS. Hopefully you can figure out how to get the tests working. Maybe they won't run well with maven, but might run from an IDE like Intellij? --- 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. ---