[jira] [Updated] (TINKERPOP-1891) Serialization of P.not() for gremlin-javascript
[ https://issues.apache.org/jira/browse/TINKERPOP-1891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1891: Fix Version/s: 3.3.2 3.2.8 > Serialization of P.not() for gremlin-javascript > --- > > Key: TINKERPOP-1891 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1891 > Project: TinkerPop > Issue Type: Bug > Components: javascript >Affects Versions: 3.2.7 >Reporter: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > There are currently four GLV tests that are currently being ignored in > gremlin-javascript as they generate failures on execution: > https://github.com/apache/tinkerpop/commit/48d459482635dafaf7feef09ffa206357cf4488f > All of these tests suspiciously all contain a {{P.not()}} so it likely has > something to do with that. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1854) Support lambdas in Gremlin.Net
[ https://issues.apache.org/jira/browse/TINKERPOP-1854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1854: Fix Version/s: 3.3.2 3.2.8 As we have a pull request open for this one, I think we should try to get it closed in time for release of 3.2.8/3.3.2 (currently targetting for first week of april) > Support lambdas in Gremlin.Net > -- > > Key: TINKERPOP-1854 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1854 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Florian Hockmann >Assignee: Florian Hockmann >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > Gremlin.Net should support lambdas. We already discussed this in [the pull > request for TINKERPOP-1752|https://github.com/apache/tinkerpop/pull/712]. > Here is what [~spmallette] said over there: > {quote} > Any reason we don't support lambdas? Even if .NET can't support them natively > for some reason wouldn't we minimally support the ability to pass a > python/groovy/etc lambda? it's kinda weird that way, but i think back to the > point that kuppitz made on the dev list the other day where he stated that he > doesn't always find a way out of using lambdas in production systems he works > on - so ultimately users will need that kind of capability i think. > {quote} > C# lambdas would require some kind of C# parser on the server side, so at > least in the beginning a way to send lambdas from already supported languages > in Gremlin.Net should be enough. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1894) GraphSONMessageSerializerV2d0 fails to deserialize valid P.not()
[ https://issues.apache.org/jira/browse/TINKERPOP-1894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1894: Fix Version/s: 3.3.2 3.2.8 > GraphSONMessageSerializerV2d0 fails to deserialize valid P.not() > > > Key: TINKERPOP-1894 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1894 > Project: TinkerPop > Issue Type: Bug > Components: io >Affects Versions: 3.2.7, 3.3.1 >Reporter: Jorge Bay >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > GraphSONMessageSerializerV2d0 is not able to deserialize a {{g : P}} > predicate for not. > You can use the following test to reproduce it: > {code:java} > public class GraphSONMessageSerializerV2d0Test { > // ... > @Test > public void shouldDeserializeNotPredicate() throws Exception { > final RequestMessage m = > SERIALIZER.deserializeRequest("{\"requestId\":{\"@type\":\"g:UUID\",\"@value\":\"0397b9c0-ffab-470e-a6a8-644fc80c01d6\"},\"op\":\"bytecode\",\"processor\":\"traversal\",\"args\":{\"gremlin\":{\"@type\":\"g:Bytecode\",\"@value\":{\"step\":[[\"V\"],[\"hasLabel\",\"person\"],[\"has\",\"age\",{\"@type\":\"g:P\",\"@value\":{\"predicate\":\"not\",\"value\":{\"@type\":\"g:P\",\"@value\":{\"predicate\":\"lte\",\"value\":{\"@type\":\"g:Int32\",\"@value\":10}]]}},\"aliases\":{\"g\":\"gmodern\"}}}"); > assertEquals("bytecode", m.getOp()); > assertNotNull(m.getArgs()); > } > } > {code} > The error message: > {code} > at > org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV2d0.deserializeRequest(GraphSONMessageSerializerV2d0.java:103) > at > org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV2d0Test.shouldDeserializeNotPredicate(GraphSONMessageSerializerV2d0Test.java:367) > 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.runners.ParentRunner.runLeaf(ParentRunner.java:325) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) > 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.runner.JUnitCore.run(JUnitCore.java:137) > at > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) > at > com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:234) > at > com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:74) > 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 com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) > Caused by: org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: > Could not deserialize the JSON value as required. Nested exception: > org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not > deserialize the JSON value as required. Nested exception: > java.lang.IllegalStateException: > org.apache.tinkerpop.gremlin.process.traversal.P.not([Ljava.lang.Object;) > at [Source: >
[jira] [Updated] (TINKERPOP-1898) Issue with bindings in strategies and lambdas
[ https://issues.apache.org/jira/browse/TINKERPOP-1898?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1898: Fix Version/s: 3.3.2 3.2.8 > Issue with bindings in strategies and lambdas > - > > Key: TINKERPOP-1898 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1898 > Project: TinkerPop > Issue Type: Improvement > Components: python, server >Affects Versions: 3.3.1 >Reporter: Jean-Philippe Braun >Priority: Major > Fix For: 3.2.8, 3.3.2 > > Attachments: bug.py > > > I'm trying to use bindings in a traversal strategy like: > {code:java} > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin', > 'g')) > g = g.withStrategies( > SubgraphStrategy(vertices=__.has('foo', ('b', 5))) > ){code} > This works unless there is a use of lambda in the traversal: > {code:java} > g.V().toList() # will work > g.V().filter(lambda: "true").toList() # this will not{code} > Here is the full TB on the server: > {code:java} > [ERROR] TraversalOpProcessor - Could not deserialize the Traversal > instance > javax.script.ScriptException: javax.script.ScriptException: > groovy.lang.MissingPropertyException: No such property: b for class: Script4 > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:397) > at > javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:233) > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:309) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.eval(GremlinExecutor.java:343) > at > org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor.iterateBytecodeTraversal(TraversalOpProcessor.java:369) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at >
[jira] [Updated] (TINKERPOP-1894) GraphSONMessageSerializerV2d0 fails to deserialize valid P.not()
[ https://issues.apache.org/jira/browse/TINKERPOP-1894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1894: Component/s: io > GraphSONMessageSerializerV2d0 fails to deserialize valid P.not() > > > Key: TINKERPOP-1894 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1894 > Project: TinkerPop > Issue Type: Bug > Components: io >Affects Versions: 3.2.7, 3.3.1 >Reporter: Jorge Bay >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > GraphSONMessageSerializerV2d0 is not able to deserialize a {{g : P}} > predicate for not. > You can use the following test to reproduce it: > {code:java} > public class GraphSONMessageSerializerV2d0Test { > // ... > @Test > public void shouldDeserializeNotPredicate() throws Exception { > final RequestMessage m = > SERIALIZER.deserializeRequest("{\"requestId\":{\"@type\":\"g:UUID\",\"@value\":\"0397b9c0-ffab-470e-a6a8-644fc80c01d6\"},\"op\":\"bytecode\",\"processor\":\"traversal\",\"args\":{\"gremlin\":{\"@type\":\"g:Bytecode\",\"@value\":{\"step\":[[\"V\"],[\"hasLabel\",\"person\"],[\"has\",\"age\",{\"@type\":\"g:P\",\"@value\":{\"predicate\":\"not\",\"value\":{\"@type\":\"g:P\",\"@value\":{\"predicate\":\"lte\",\"value\":{\"@type\":\"g:Int32\",\"@value\":10}]]}},\"aliases\":{\"g\":\"gmodern\"}}}"); > assertEquals("bytecode", m.getOp()); > assertNotNull(m.getArgs()); > } > } > {code} > The error message: > {code} > at > org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV2d0.deserializeRequest(GraphSONMessageSerializerV2d0.java:103) > at > org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV2d0Test.shouldDeserializeNotPredicate(GraphSONMessageSerializerV2d0Test.java:367) > 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.runners.ParentRunner.runLeaf(ParentRunner.java:325) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) > 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.runner.JUnitCore.run(JUnitCore.java:137) > at > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) > at > com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:234) > at > com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:74) > 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 com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) > Caused by: org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: > Could not deserialize the JSON value as required. Nested exception: > org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not > deserialize the JSON value as required. Nested exception: > java.lang.IllegalStateException: > org.apache.tinkerpop.gremlin.process.traversal.P.not([Ljava.lang.Object;) > at [Source: > {"requestId":{"@type":"g:UUID","@value":"0397b9c0-ffab-470e-a6a8-644fc80c01d6"},"op":"bytecode","processor":"traversal","args":{"gremlin":{"@type":"g:Bytecode","@value":{"step":[["V"],["hasLabel","person"],["has","age",{"@type":"g:P","@value":{"predicate":"not","value":{"@type":"g:P","@value":{"predicate":"lte","value":{"@type":"g:Int32","@value":10}]]}},"aliases":{"g":"gmodern"}}}; > line: 1,
[jira] [Commented] (TINKERPOP-1885) Various Gremlin.Net documentation updates
[ https://issues.apache.org/jira/browse/TINKERPOP-1885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381933#comment-16381933 ] stephen mallette commented on TINKERPOP-1885: - Gravatar image is setup for nuget. As for a ".NET Gremlin", I think that for now you could just use the standard Microsoft .NET logo like this: https://s3.amazonaws.com/production-wordpress-assets/blog/wp-content/uploads/2017/02/23082646/Microsoft-dotNET-logo.jpg or something similar. [~Florian Hockmann] do you have time soon to get the README in place so that we can get this one closed? > Various Gremlin.Net documentation updates > - > > Key: TINKERPOP-1885 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1885 > Project: TinkerPop > Issue Type: Improvement > Components: documentation, dotnet >Affects Versions: 3.2.7, 3.3.1 >Reporter: Florian Hockmann >Priority: Trivial > > We have some parts of the documentation regarding Gremlin.Net that should be > updated now that we have a stable release: > * Homepage: _Query Languages_ misses a reference to Gremlin.Net > * Homepage: _Language Drivers_ section still links to the repository on my > private account. It should probably link to the Gremlin.Net section in the > reference docs or to a {{README}} (see below). > * Reference docs still contain a warning that _Gremlin.Net does not yet have > an official release._ > * Add a {{README}} that explains Gremlin.Net, similar to the documents we > have for the Python and Javascript GLVs. > * The {{csproj}} file contains a pretty extensive {{summary}} element, but > {{summary}} isn't part of the {{csproj}} standard. So it isn't used for > anything. It should be merged into the {{description}} element instead. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1907) Fix failing GLV test for withSack() in .NET
stephen mallette created TINKERPOP-1907: --- Summary: Fix failing GLV test for withSack() in .NET Key: TINKERPOP-1907 URL: https://issues.apache.org/jira/browse/TINKERPOP-1907 Project: TinkerPop Issue Type: Bug Components: dotnet Affects Versions: 3.2.7 Reporter: stephen mallette Fix For: 3.2.8, 3.3.2 This test is currently failing (and is ignored) for .NET: {{g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack:}} Here is the error it is presenting: {code} Xunit.Sdk.ContainsException: Assert.Contains() Failure Not found: 1 In value: Object[] [1, 1] at Xunit.Assert.Contains[T](T expected, IEnumerable`1 collection, IEqualityComparer`1 comparer) at Gremlin.Net.IntegrationTest.Gherkin.CommonSteps.AssertResult(String characterizedAs, DataTable table) in /home/smallette/git/apache/incubator-tinkerpop/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs:line 188 {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1896) gremlin-python lambdas error
[ https://issues.apache.org/jira/browse/TINKERPOP-1896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1896. --- Resolution: Fixed > gremlin-python lambdas error > > > Key: TINKERPOP-1896 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1896 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > Gremlin-python lambdas throw an error on the server when the preceding step > produces maps. > {code} > Traceback (most recent call last): > File "foo.py", line 15, in > print g.V().has('name').match(__.as_('x').label().as_('lbl'), > __.as_('x').id().as_('id')).select('lbl', 'id').map(lambda: "lambda x: > type(x)").toList() > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 52, in toList > return list(iter(self)) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 70, in next > return self.__next__() > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 43, in __next__ > self.traversal_strategies.apply_strategies(self) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 352, in apply_strategies > traversal_strategy.apply(traversal) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/driver/remote_connection.py", > line 143, in apply > remote_traversal = self.remote_connection.submit(traversal.bytecode) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/driver/driver_remote_connection.py", > line 54, in submit > results = result_set.all().result() > File > "/user/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", line > 462, in result > return self.__get_result() > File > "/user/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", line > 414, in __get_result > raise exception_type, self._exception, self._traceback > gremlin_python.driver.protocol.GremlinServerError: 599: AttributeError: type > object 'org.apache.tinkerpop.gremlin.process.traversal.dsl' has no attribute > 'as_' in
[jira] [Updated] (TINKERPOP-1896) gremlin-python lambdas error
[ https://issues.apache.org/jira/browse/TINKERPOP-1896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1896: Summary: gremlin-python lambdas error (was: gremlin-python lambdas error when working on Maps) > gremlin-python lambdas error > > > Key: TINKERPOP-1896 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1896 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > Gremlin-python lambdas throw an error on the server when the preceding step > produces maps. > {code} > Traceback (most recent call last): > File "foo.py", line 15, in > print g.V().has('name').match(__.as_('x').label().as_('lbl'), > __.as_('x').id().as_('id')).select('lbl', 'id').map(lambda: "lambda x: > type(x)").toList() > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 52, in toList > return list(iter(self)) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 70, in next > return self.__next__() > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 43, in __next__ > self.traversal_strategies.apply_strategies(self) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 352, in apply_strategies > traversal_strategy.apply(traversal) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/driver/remote_connection.py", > line 143, in apply > remote_traversal = self.remote_connection.submit(traversal.bytecode) > File > "/user/.local/lib/python2.7/site-packages/gremlin_python/driver/driver_remote_connection.py", > line 54, in submit > results = result_set.all().result() > File > "/user/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", line > 462, in result > return self.__get_result() > File > "/user/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", line > 414, in __get_result > raise exception_type, self._exception, self._traceback > gremlin_python.driver.protocol.GremlinServerError: 599: AttributeError: type > object 'org.apache.tinkerpop.gremlin.process.traversal.dsl' has no attribute > 'as_' in
[jira] [Closed] (TINKERPOP-1922) Gherkin features fail that contain P.not() in Gremlin.Net
[ https://issues.apache.org/jira/browse/TINKERPOP-1922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1922. --- Resolution: Fixed Assignee: stephen mallette Verified that this was resolve by TINKERPOP-1894 - removed ignores via CTR: https://github.com/apache/tinkerpop/commit/0bf9b2f718f7db8344845d8fb5327ea16f1e9414 > Gherkin features fail that contain P.not() in Gremlin.Net > - > > Key: TINKERPOP-1922 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1922 > Project: TinkerPop > Issue Type: Bug > Components: dotnet >Affects Versions: 3.2.7 >Reporter: Florian Hockmann >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > Gherkin scenarios that contain {{P.not()}} currently fail in Gremlin.Net. The > server prints an exception that hints at problems with deserialization of > {{P.not()}}: > {code:java} > Could not deserialize the JSON value as required. Nested exception: > java.lang.IllegalStateException: > org.apache.tinkerpop.gremlin.process.traversal.P.not([Ljava.lang.Object;){code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1909) Gremlin.Net does not have complete object model as compared to other client drivers and unable to de-serialize properties for vertex/edge graphSON.
[ https://issues.apache.org/jira/browse/TINKERPOP-1909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16392833#comment-16392833 ] stephen mallette commented on TINKERPOP-1909: - We've established a distinction between a GLV (currently Python, .NET and Javascript) and a full Gremlin Virtual Machine (GVM) implementation of TinkerPop (currently just the JVM - which would include Java, Groovy, as well as third-party libraries like gremlin-scala, ogre and perhaps others). The difference in the object model is related to that distinction. A GLV holds a more lightweight object model than a full GVM. I earlier referenced TINKERPOP-1417 because I believe that presents one of the first steps to bridging that gap, but I don't believe we are ready to make that kind of move just yet (again, something for the distant 4.x probably). I'm against expanding the object model at this time as I feel like we went into long discussion on this leading up to 3.3.0 and we came away with these current definitions of GLV versus GVM versus TINKERPOP-1417. Given that we spent as much time on that as we did, I think it would be smart to maintain course as they are through at least 3.4.0. I personally waffled back and forth forever on it and the discussion is wickedly hard to follow because it took a while to clarify the difference between GLV and GVM (though Marko had it straight in his head from the beginning with his view of things) which is evident in a web of JIRA issues and mailing list discussion (this issue touches on some of this discussion and connects to other areas of relevance - TINKERPOP-1474) Anecdotally, I'll say that I've not witnessed many users struggling with the current object model (no issues have been raised to me from customers at my company and the mailing list is usually pretty silent about it - occasionally someone might ask about it, but they quickly grasp that SQL metaphor I provided earlier and, to my knowledge, move on). I think that the root of that lies in the fact that once you really start to develop applications you typically don't return graph elements as your answers. you return the data and that data has a shape that is not in the shape of a vertex/edge. It comes in the form of lists/maps. Anyway, I hope it's clear that I'm just offering my opinion here on the direction that should be taken for the immediate needs of 3.2.x, 3.3.x and 3.4.x. I think I'd like to see how the current design plays out before reversing it. Gremlin-Javascript hasn't even had a release yet to hear feedback from that community and the .NET release is just one official release old. I think we should see how things develop in each of these GLVs before undertaking this discussion again. If you still feel differently, feel free to start a DISCUSS thread on the dev mailing list about it and see if anyone in the community wants to engage - it's obviously a community decision to make and not mine alone. > Gremlin.Net does not have complete object model as compared to other client > drivers and unable to de-serialize properties for vertex/edge graphSON. > - > > Key: TINKERPOP-1909 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1909 > Project: TinkerPop > Issue Type: Bug > Components: dotnet >Affects Versions: 3.3.1 >Reporter: Ashwini Singh >Priority: Major > > Looks like the object model for Gremlin.Net client driver is not as par with > Java driver. We cannot deserialize a GraphSON response to tinkerpop object > completely. For example, Gremlin.Net object model cannot deserialize > properties from a graphSON response object (vertex/edges). Currently, we only > deserialize id and label field from a vertex/edge graphSON. > > So, to desterilize the object model, users have to write a custom > deserialization code and create the object. The current de-serializers (for > vertex/edge) will strip off details like properties. > > I am filing it as a bug but it could fall into improvement as well. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1895) gremlin-python lambdas do not work with HaltedTraverserStrategy(DetachedFactory)
[ https://issues.apache.org/jira/browse/TINKERPOP-1895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16392938#comment-16392938 ] stephen mallette commented on TINKERPOP-1895: - The fix to this one is on TINKERPOP-1896 > gremlin-python lambdas do not work with > HaltedTraverserStrategy(DetachedFactory) > > > Key: TINKERPOP-1895 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1895 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > When using the HaltedTraverserStrategy(o.a.t.g.s.u.d.DetachedFactory) in > gremlin-python, lambdas cannot be processed, returning a Python NameError. > Using the examples from the documentation, against > gremlin-server-modern-py.yaml > > g.V().out().map(lambda: "x: len(x.get().value('name'))").sum().toList() > [24L] > g.withStrategies(HaltedTraverserStrategy("org.apache.tinkerpop.gremlin.structure.util.detached.DetachedFactory")).V().out().map(lambda: > "x: len(x.get().value('name'))").sum().toList() > GremlinServerError: 599: NameError: name 'TraversalStrategy' is not defined > in
[jira] [Commented] (TINKERPOP-1898) Issue with bindings in strategies and lambdas
[ https://issues.apache.org/jira/browse/TINKERPOP-1898?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16392987#comment-16392987 ] stephen mallette commented on TINKERPOP-1898: - will be resolved on TINKERPOP-1896 > Issue with bindings in strategies and lambdas > - > > Key: TINKERPOP-1898 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1898 > Project: TinkerPop > Issue Type: Bug > Components: python, server >Affects Versions: 3.3.1 >Reporter: Jean-Philippe Braun >Priority: Major > Fix For: 3.2.8, 3.3.2 > > Attachments: bug.py > > > I'm trying to use bindings in a traversal strategy like: > {code:java} > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin', > 'g')) > g = g.withStrategies( > SubgraphStrategy(vertices=__.has('foo', ('b', 5))) > ){code} > This works unless there is a use of lambda in the traversal: > {code:java} > g.V().toList() # will work > g.V().filter(lambda: "true").toList() # this will not{code} > Here is the full TB on the server: > {code:java} > [ERROR] TraversalOpProcessor - Could not deserialize the Traversal > instance > javax.script.ScriptException: javax.script.ScriptException: > groovy.lang.MissingPropertyException: No such property: b for class: Script4 > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:397) > at > javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:233) > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:309) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.eval(GremlinExecutor.java:343) > at > org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor.iterateBytecodeTraversal(TraversalOpProcessor.java:369) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at >
[jira] [Assigned] (TINKERPOP-1898) Issue with bindings in strategies and lambdas
[ https://issues.apache.org/jira/browse/TINKERPOP-1898?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1898: --- Assignee: stephen mallette > Issue with bindings in strategies and lambdas > - > > Key: TINKERPOP-1898 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1898 > Project: TinkerPop > Issue Type: Bug > Components: python, server >Affects Versions: 3.3.1 >Reporter: Jean-Philippe Braun >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > Attachments: bug.py > > > I'm trying to use bindings in a traversal strategy like: > {code:java} > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin', > 'g')) > g = g.withStrategies( > SubgraphStrategy(vertices=__.has('foo', ('b', 5))) > ){code} > This works unless there is a use of lambda in the traversal: > {code:java} > g.V().toList() # will work > g.V().filter(lambda: "true").toList() # this will not{code} > Here is the full TB on the server: > {code:java} > [ERROR] TraversalOpProcessor - Could not deserialize the Traversal > instance > javax.script.ScriptException: javax.script.ScriptException: > groovy.lang.MissingPropertyException: No such property: b for class: Script4 > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:397) > at > javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:233) > at > org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine.eval(GremlinGroovyScriptEngine.java:309) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.eval(GremlinExecutor.java:343) > at > org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor.iterateBytecodeTraversal(TraversalOpProcessor.java:369) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) > at > org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) > at > io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) > at >
[jira] [Assigned] (TINKERPOP-1895) gremlin-python lambdas do not work with HaltedTraverserStrategy(DetachedFactory)
[ https://issues.apache.org/jira/browse/TINKERPOP-1895?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1895: --- Assignee: stephen mallette > gremlin-python lambdas do not work with > HaltedTraverserStrategy(DetachedFactory) > > > Key: TINKERPOP-1895 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1895 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.8, 3.3.2 > > > When using the HaltedTraverserStrategy(o.a.t.g.s.u.d.DetachedFactory) in > gremlin-python, lambdas cannot be processed, returning a Python NameError. > Using the examples from the documentation, against > gremlin-server-modern-py.yaml > > g.V().out().map(lambda: "x: len(x.get().value('name'))").sum().toList() > [24L] > g.withStrategies(HaltedTraverserStrategy("org.apache.tinkerpop.gremlin.structure.util.detached.DetachedFactory")).V().out().map(lambda: > "x: len(x.get().value('name'))").sum().toList() > GremlinServerError: 599: NameError: name 'TraversalStrategy' is not defined > in
[jira] [Closed] (TINKERPOP-1908) Bump to Groovy 2.4.14
[ https://issues.apache.org/jira/browse/TINKERPOP-1908?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1908. --- Resolution: Done > Bump to Groovy 2.4.14 > - > > Key: TINKERPOP-1908 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1908 > Project: TinkerPop > Issue Type: Improvement > Components: groovy >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Minor > Fix For: 3.2.8, 3.3.2 > > > We were at 2.4.11 prior to this - here's the release notes sets for changes > since that version: > http://groovy-lang.org/changelogs/changelog-2.4.12.html > http://groovy-lang.org/changelogs/changelog-2.4.13.html > http://groovy-lang.org/changelogs/changelog-2.4.14.html > It's mostly bug fixes (with one in 2.4.14 that involves the > {{GroovyScriptEngine}} and seems relevantt o our usage) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1885) Various Gremlin.Net documentation updates
[ https://issues.apache.org/jira/browse/TINKERPOP-1885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388099#comment-16388099 ] stephen mallette commented on TINKERPOP-1885: - I think that the logo is fine - don't think you need to wait on too much feedbacki'd say just go with it and if someone thinks it can change they can say so. as for that page on the {{/site}} that you referenced i think it should be added there too (we'll need JS there too when that's ready). If you weren't aware you just need to modify this: https://github.com/apache/tinkerpop/blob/master/docs/site/home/providers.html > Various Gremlin.Net documentation updates > - > > Key: TINKERPOP-1885 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1885 > Project: TinkerPop > Issue Type: Improvement > Components: documentation, dotnet >Affects Versions: 3.2.7, 3.3.1 >Reporter: Florian Hockmann >Assignee: Florian Hockmann >Priority: Trivial > Fix For: 3.2.8, 3.3.2 > > Attachments: gremlin-dotnet-logo.png > > > We have some parts of the documentation regarding Gremlin.Net that should be > updated now that we have a stable release: > * Homepage: _Query Languages_ misses a reference to Gremlin.Net > * Homepage: _Language Drivers_ section still links to the repository on my > private account. It should probably link to the Gremlin.Net section in the > reference docs or to a {{README}} (see below). > * Reference docs still contain a warning that _Gremlin.Net does not yet have > an official release._ > * Add a {{README}} that explains Gremlin.Net, similar to the documents we > have for the Python and Javascript GLVs. > * The {{csproj}} file contains a pretty extensive {{summary}} element, but > {{summary}} isn't part of the {{csproj}} standard. So it isn't used for > anything. It should be merged into the {{description}} element instead. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1911) Refactor JavaTranslator to cache all reflective calls
stephen mallette created TINKERPOP-1911: --- Summary: Refactor JavaTranslator to cache all reflective calls Key: TINKERPOP-1911 URL: https://issues.apache.org/jira/browse/TINKERPOP-1911 Project: TinkerPop Issue Type: Improvement Components: process Affects Versions: 3.2.7 Reporter: stephen mallette Assignee: stephen mallette For some reason {{JavaTranslator}} still has some reflection calls in it that are called on every {{Bytecode}} translation. We should cache the results of those expensive methods. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1909) Gremlin.Net does not have complete object model as compared to other client drivers and unable to de-serialize properties for vertex/edge graphSON.
[ https://issues.apache.org/jira/browse/TINKERPOP-1909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387868#comment-16387868 ] stephen mallette commented on TINKERPOP-1909: - Ok - to simplify our discussion, I think we should drop any design ideas for potential inclusion in 4.x from this issue - that's a long long way off. So 3.x talk only - perhaps we start by exploring your suggestion that you made a few comments back: "let applications extend the object model + deserializers if required". I'm not sure what that would entail to TinkerPop - have you given any thought to that as of yet? finally, just a quick response to your question about bulk insert wrt to 4.x - i don't think we have one yet, however, i still very much like the idea of shipping around client side subgraphs that can be merged into a main graph in a single transaction. That is somewhat akin to your idea there of submitting a full graphson file (containing a subgraph) to the server for insert. To me, this approach would solve a great many user problems regarding transactions, bulk updates/inserts mechanics, performance, etc., but it would likely mean some challenges for TinkerPop and graph providers. TinkerPop would need to build out more infrastructure in GLVs to support something like that and there would have to be some way for TinkerPop and/or graph providers to handle the merge of that subgraph on update. Anyway, that's my idea for now - it certainly requires more discussion. > Gremlin.Net does not have complete object model as compared to other client > drivers and unable to de-serialize properties for vertex/edge graphSON. > - > > Key: TINKERPOP-1909 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1909 > Project: TinkerPop > Issue Type: Bug > Components: dotnet >Affects Versions: 3.3.1 >Reporter: Ashwini Singh >Priority: Major > > Looks like the object model for Gremlin.Net client driver is not as par with > Java driver. We cannot deserialize a GraphSON response to tinkerpop object > completely. For example, Gremlin.Net object model cannot deserialize > properties from a graphSON response object (vertex/edges). Currently, we only > deserialize id and label field from a vertex/edge graphSON. > > So, to desterilize the object model, users have to write a custom > deserialization code and create the object. The current de-serializers (for > vertex/edge) will strip off details like properties. > > I am filing it as a bug but it could fall into improvement as well. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1912) Remove MD5 checksums
[ https://issues.apache.org/jira/browse/TINKERPOP-1912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1912: Affects Version/s: 3.2.7 > Remove MD5 checksums > > > Key: TINKERPOP-1912 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1912 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.7 >Reporter: Daniel Kuppitz >Assignee: Daniel Kuppitz >Priority: Minor > > Apache is asking to remove MD5 checksums from releases. > *Old policy:* > * MUST provide a MD5-file > * SHOULD provide a SHA-file [SHA-512 recommended] > *New policy:* > * MUST provide a SHA- or MD5-file > * SHOULD provide a SHA-file > * SHOULD NOT provide a MD5-file > Providing MD5 checksum files is now discouraged for new releases, but still > allowed for past releases. > *Why this change:* > * MD5 is broken for many purposes ; we should move away from it. > [https://en.wikipedia.org/wiki/MD5#Overview_of_security_issues] > *Impact for PMCs:* > * _*for new releases:*_ > ** please do provide a SHA-file (one or more, if you like) > ** do NOT provide a MD5-file -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1913) Expose metadata from Gremlin Server to Clients
[ https://issues.apache.org/jira/browse/TINKERPOP-1913?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1913: --- Assignee: stephen mallette > Expose metadata from Gremlin Server to Clients > -- > > Key: TINKERPOP-1913 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1913 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.1 >Reporter: Ashwini Singh >Assignee: stephen mallette >Priority: Major > > To summarize what we have discussed so far: > 1. For API using GremlinRequest/QueryScript, expose response attribute as > part of result. Using an approach to similar to Java client driver (using > ResultSet) . [Priority0] > -- We rely on the last message for response attributes. > 2. For GLV, add response attribute as part of Traversal. [Priority 0] > --Rely on the last message for attributes. > 3. Expose other server details (like server setting). I would suggest to > split this design discussion into two directions: > a. Metadata for request execution: Only focuses on details > related to request execution. Can be achieved through #1 and #2. > b. Metadata for Gremlin Server: Focuses on overall metadata > for the server. Could be a separate request and fetch the data once for a > connection. > Targeted drivers: dotnet, Java, python, javascript. > More details: > [https://lists.apache.org/thread.html/fd2208a2db827bc1eb479ad8c2f181bd2fa532553c97b3fe6994a7b6@%3Cdev.tinkerpop.apache.org%3E] > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1930) Drop support for Giraph
[ https://issues.apache.org/jira/browse/TINKERPOP-1930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1930. --- Resolution: Done > Drop support for Giraph > --- > > Key: TINKERPOP-1930 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1930 > Project: TinkerPop > Issue Type: Improvement > Components: hadoop >Affects Versions: 3.3.1 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > > Remove support for Giraph as per discussion on mailing list: > https://lists.apache.org/thread.html/99b04ede4c165bfba1629e2df60c8837dde9e22cb220d15cd19e78ef@%3Cdev.tinkerpop.apache.org%3E -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1246) 'help' in the gremlin console should give the user something
[ https://issues.apache.org/jira/browse/TINKERPOP-1246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1246. --- Resolution: Won't Do Closing - won't do anything further on this one. thanks > 'help' in the gremlin console should give the user something > > > Key: TINKERPOP-1246 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1246 > Project: TinkerPop > Issue Type: Improvement > Components: console >Affects Versions: 3.1.1-incubating >Reporter: Jeremy Hanna >Priority: Major > > A new user to TinkerPop and/or Gremlin will probably flounder initially and > will likely try to type 'help' in the gremlin-console. Currently it just > gives an error that help is not mapped to a class and gives the option to > show a stack trace. > I know there is :help for the command mode, but that's going to confuse them > further I think because those are special commands and not what they're > looking for. > Piggy backing on something [~rustyrazorblade] mentioned, perhaps we could > have it give a general message but help gremlin or help tinkerpop could open > the docs. > In general though, I think it would be useful to have something defined for > help - perhaps a basic explanation with a couple of examples with the toy > graph while also referring to the tutorials section of the site. Then it > would also be handy to override the help with specific commands like for each > of the commands in the docs like traversal steps (though that may be a lot of > work to maintain) such as 'help count' or 'help barrier'. Specific keywords > could be used like was mentioned 'help gremlin' or 'help tinkerpop' or 'help > docs' could open the docs. > Maybe some of this is overkill but I think overriding 'help' in some form > would be helpful for new users. Also just trying to brainstorm what could be > done. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1935) GraphML Export Fails with List Cardinality
[ https://issues.apache.org/jira/browse/TINKERPOP-1935?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16432064#comment-16432064 ] stephen mallette commented on TINKERPOP-1935: - GraphML as a format has no direct support for a concept like multi-properties. Perhaps there would be a way to include some kind of custom type to support that, but we've resisted that approach (for this and other "features") given the use case that GraphML tries to fit. GraphML is meant for the widest level of interoperability with other systems. The GraphML we generate is meant to be consumed by other tools (e.g. Cytoscape, Gephi, etc). That means we want GraphML to only support the lowest common denominator of features and for everything else, users can use GraphSON or Gryo which support the full scope of TinkerPop features. > GraphML Export Fails with List Cardinality > -- > > Key: TINKERPOP-1935 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1935 > Project: TinkerPop > Issue Type: Bug > Components: io >Affects Versions: 3.3.2 >Reporter: James Baker >Priority: Major > > Exporting to GraphML throws an error if there are nodes with a List > Cardinality and multiple values set for a property. This works fine when > exporting to GraphSON. > The exception thrown is: > {{java.lang.IllegalStateException: Multiple properties exist for the provided > key, use Vertex.properties(name)}}{{at > org.apache.tinkerpop.gremlin.structure.Vertex$Exceptions.multiplePropertiesExistForProvidedKey(Vertex.java:179)}} > {{ at > org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerVertex.property(TinkerVertex.java:75)}} > {{ at > org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLWriter.writeVertices(GraphMLWriter.java:315)}} > {{ at > org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLWriter.writeGraph(GraphMLWriter.java:193)}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1933) gremlin-python maximum recursion depth exceeded on large responses
[ https://issues.apache.org/jira/browse/TINKERPOP-1933?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1933: --- Assignee: David M. Brown > gremlin-python maximum recursion depth exceeded on large responses > -- > > Key: TINKERPOP-1933 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1933 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Assignee: David M. Brown >Priority: Major > > gremlin-python fails to deserialize large lists returned from the server, > giving the error: > > {{>>> x = g.V().limit(65000).toList()}} > {{Traceback (most recent call last):}} > {{ File "/usr/lib/python2.7/logging/__init__.py", line 861, in emit}} > {{Traceback (most recent call last):}} > {{ File "", line 1, in }} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 52, in toList}} > {{ return list(iter(self))}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 70, in next}} > {{ return self.__next__()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 43, in __next__}} > {{ self.traversal_strategies.apply_strategies(self)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 352, in apply_strategies}} > {{ traversal_strategy.apply(traversal)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/driver/remote_connection.py", > line 143, in apply}} > {{ remote_traversal = self.remote_connection.submit(traversal.bytecode)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/driver/driver_remote_connection.py", > line 54, in submit}} > {{ results = result_set.all().result()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", > line 462, in result}} > {{ return self.__get_result()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", > line 414, in __get_result}} > {{ raise exception_type, self._exception, self._traceback}} > {{RuntimeError: maximum recursion depth exceeded while calling a Python > object}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1333) Create a new toy graph with its own serializations and IORegistry.
[ https://issues.apache.org/jira/browse/TINKERPOP-1333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16425323#comment-16425323 ] stephen mallette commented on TINKERPOP-1333: - Just realized that this would have to now wait for 3.4.0 because the sink is using a "number" id manager. we'd need a breaking change to switch that. > Create a new toy graph with its own serializations and IORegistry. > -- > > Key: TINKERPOP-1333 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1333 > Project: TinkerPop > Issue Type: Improvement > Components: io, test-suite >Affects Versions: 3.2.0-incubating >Reporter: Marko A. Rodriguez >Priority: Major > > I found a problem in the latest SNAPSHOT of TinkerPop 3.2.1-SNAPSHOT that had > a bad configuration setting in {{SparkGraphComputer}}. This bug did not show > up in our test suite because we don't have a graph that has user defined > types. That is, types not already in {{GryoMapper}}. I think we need a new > toy graph that has user defined types and its part of the {{ProcessXXXSuite}} > so both OLTP and OLAP get hit and we ensure that our IORegistry serialization > stuff is all prim and proper. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1933) gremlin-python maximum recursion depth exceeded on large responses
[ https://issues.apache.org/jira/browse/TINKERPOP-1933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16425316#comment-16425316 ] stephen mallette commented on TINKERPOP-1933: - can you please provide some more details? what size list will trigger this error? does this happen with scripts or when using remote traversals (i.e. bytecode based traversals)? do you have some specific reproduction steps? > gremlin-python maximum recursion depth exceeded on large responses > -- > > Key: TINKERPOP-1933 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1933 > Project: TinkerPop > Issue Type: Bug > Components: python >Affects Versions: 3.3.1 >Reporter: Branden Moore >Priority: Major > > gremlin-python fails to deserialize large lists returned from the server, > giving the error: > > {{>>> x = g.V().limit(65000).toList()}} > {{Traceback (most recent call last):}} > {{ File "/usr/lib/python2.7/logging/__init__.py", line 861, in emit}} > {{Traceback (most recent call last):}} > {{ File "", line 1, in }} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 52, in toList}} > {{ return list(iter(self))}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 70, in next}} > {{ return self.__next__()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 43, in __next__}} > {{ self.traversal_strategies.apply_strategies(self)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/process/traversal.py", > line 352, in apply_strategies}} > {{ traversal_strategy.apply(traversal)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/driver/remote_connection.py", > line 143, in apply}} > {{ remote_traversal = self.remote_connection.submit(traversal.bytecode)}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/gremlin_python/driver/driver_remote_connection.py", > line 54, in submit}} > {{ results = result_set.all().result()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", > line 462, in result}} > {{ return self.__get_result()}} > {{ File > "/ascldap/users/bjmoor/.local/lib/python2.7/site-packages/concurrent/futures/_base.py", > line 414, in __get_result}} > {{ raise exception_type, self._exception, self._traceback}} > {{RuntimeError: maximum recursion depth exceeded while calling a Python > object}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1934) Bump to latest version of httpclient
[ https://issues.apache.org/jira/browse/TINKERPOP-1934?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1934: Fix Version/s: 3.3.3 3.4.0 > Bump to latest version of httpclient > > > Key: TINKERPOP-1934 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1934 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > Should probably go to 4.5.5 which will cleanly get us away from: > https://nvd.nist.gov/vuln/detail/CVE-2013-4366 > We seem to reference httpclient in a bunch of places - should probably unify > the version if possible. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1722) Allow graph implementations to supply their own implementation of StarGraph
[ https://issues.apache.org/jira/browse/TINKERPOP-1722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1722. --- Resolution: Won't Do spoke to bryn on the side - he's agreed that this is no longer an issue for him > Allow graph implementations to supply their own implementation of StarGraph > --- > > Key: TINKERPOP-1722 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1722 > Project: TinkerPop > Issue Type: Improvement > Components: hadoop >Affects Versions: 3.2.5 >Reporter: Bryn Cooke >Priority: Major > > Currently there is only one version of StarGraph and it is impossible to > supply a different implementation. > Allowing an implementation to supply their own would allow the following: > * More consistent behaviour between OLTP and OLAP behaviour where behaviour > is not well defined in TP. > * Better optimisation such as allowing schema information to be shared across > many star graphs. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1934) Bump to latest version of httpclient
[ https://issues.apache.org/jira/browse/TINKERPOP-1934?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1934: Fix Version/s: 3.2.9 > Bump to latest version of httpclient > > > Key: TINKERPOP-1934 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1934 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.2.9 > > > Should probably go to 4.5.5 which will cleanly get us away from: > https://nvd.nist.gov/vuln/detail/CVE-2013-4366 > We seem to reference httpclient in a bunch of places - should probably unify > the version if possible. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1934) Bump to latest version of httpclient
stephen mallette created TINKERPOP-1934: --- Summary: Bump to latest version of httpclient Key: TINKERPOP-1934 URL: https://issues.apache.org/jira/browse/TINKERPOP-1934 Project: TinkerPop Issue Type: Improvement Components: build-release Affects Versions: 3.2.7 Reporter: stephen mallette Assignee: stephen mallette Should probably go to 4.5.5 which will cleanly get us away from: https://nvd.nist.gov/vuln/detail/CVE-2013-4366 We seem to reference httpclient in a bunch of places - should probably unify the version if possible. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1927) Gherkin scenario expects list with duplicates, but receives g:Set
[ https://issues.apache.org/jira/browse/TINKERPOP-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16426852#comment-16426852 ] stephen mallette commented on TINKERPOP-1927: - The scenario doesn't really return a {{Set}} - it's actually a {{BulkSet}}. {code} gremlin> bs = g.V().store("a"). ..1> by(__.outE("created").count()). ..2> out().out().store("a"). ..3> by(__.inE("created").values("weight").sum()). ..4> cap("a").next() ==>1 ==>1 ==>0 ==>0 ==>0 ==>2 ==>1.0 ==>1.0 gremlin> bs.class ==>class org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet gremlin> bs.size() ==>8 gremlin> bs.uniqueSize() ==>4 {code} and therefore it coerces to {{g:Set}} when serialized. {{BulkSet}} isn't a type in GraphSON and we don't have such infrastructure in the GLVs. I don't think we need to introduce {{BulkSet}} either. Perhaps the easiest fix is to coerce {{BulkSet}} to {{g:List}} since it behaves that way when iterated. I'll try that approach unless someone has better ideas. > Gherkin scenario expects list with duplicates, but receives g:Set > - > > Key: TINKERPOP-1927 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1927 > Project: TinkerPop > Issue Type: Bug > Components: dotnet, javascript, python, test-suite >Affects Versions: 3.3.1 >Reporter: Florian Hockmann >Priority: Major > > The scenario > {{g_V_storeXaX_byXoutEXcreatedX_countX_out_out_storeXaX_byXinEXcreatedX_weight_sumX}} > expects > {code:java} > | result | > | d[1].l | > | d[1].l | > | d[0].l | > | d[0].l | > | d[0].l | > | d[2].l | > | d[1.0].d | > | d[1.0].d | > {code} > but we receive this from the server: > {code:java} > { > "@type": "g:Set", > "@value": [ > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 2 > }, > { > "@type": "g:Double", > "@value": 1 > }, > { > "@type": "g:Double", > "@value": 1 > } > ] > } > {code} > The set returned by the server contains 4 duplicates that shouldn't be part > of the expected result in the scenario. > Unfortunately, while working on TINKERPOP-1865 we noticed that gremlin-python > and gremlin-javascript fail when the scenario is fixed like that. So those > two GLVs probably need to be fixed to handle {{g:Set}} correctly. > After fixing the scenario, it can be removed from the list of ignored > scenarios in Gremlin.Net. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1927) Gherkin scenario expects list with duplicates, but receives g:Set
[ https://issues.apache.org/jira/browse/TINKERPOP-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1927: --- Assignee: stephen mallette > Gherkin scenario expects list with duplicates, but receives g:Set > - > > Key: TINKERPOP-1927 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1927 > Project: TinkerPop > Issue Type: Bug > Components: dotnet, javascript, python, test-suite >Affects Versions: 3.3.1 >Reporter: Florian Hockmann >Assignee: stephen mallette >Priority: Major > > The scenario > {{g_V_storeXaX_byXoutEXcreatedX_countX_out_out_storeXaX_byXinEXcreatedX_weight_sumX}} > expects > {code:java} > | result | > | d[1].l | > | d[1].l | > | d[0].l | > | d[0].l | > | d[0].l | > | d[2].l | > | d[1.0].d | > | d[1.0].d | > {code} > but we receive this from the server: > {code:java} > { > "@type": "g:Set", > "@value": [ > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 2 > }, > { > "@type": "g:Double", > "@value": 1 > }, > { > "@type": "g:Double", > "@value": 1 > } > ] > } > {code} > The set returned by the server contains 4 duplicates that shouldn't be part > of the expected result in the scenario. > Unfortunately, while working on TINKERPOP-1865 we noticed that gremlin-python > and gremlin-javascript fail when the scenario is fixed like that. So those > two GLVs probably need to be fixed to handle {{g:Set}} correctly. > After fixing the scenario, it can be removed from the list of ignored > scenarios in Gremlin.Net. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-519) Create a security strategy to ship with TP3
[ https://issues.apache.org/jira/browse/TINKERPOP-519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16425727#comment-16425727 ] stephen mallette commented on TINKERPOP-519: I'm feeling like we shouldn't add any more of these types of strategies (to include TINKERPOP-520) as it might be hard to get these implementations generic enough to be good for all use cases. Unless someone feels strongly about having these kinds of strategies in tinkerpop for some reason and wants to drive the development forward, I think my inclination would be to close this ticket (and the other) in favor of considering the idea of writing a tutorial for strategy development using these use cases in mind. Then someone could use those as a model for building their own for their specific use case. > Create a security strategy to ship with TP3 > --- > > Key: TINKERPOP-519 > URL: https://issues.apache.org/jira/browse/TINKERPOP-519 > Project: TinkerPop > Issue Type: Improvement > Components: structure >Affects Versions: 3.0.2-incubating >Reporter: Bryn Cooke >Priority: Major > > The requirement for a security strategy seems to come up over and over again. > Let's provide something that people can either use or base their code on. > I have an implementation that can be used as a starting point. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1143) Remove deprecated TraversalSource.Builder and TraversalEngine.
[ https://issues.apache.org/jira/browse/TINKERPOP-1143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1143: --- Assignee: stephen mallette > Remove deprecated TraversalSource.Builder and TraversalEngine. > -- > > Key: TINKERPOP-1143 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1143 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.0-incubating >Reporter: Marko A. Rodriguez >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1143) Remove deprecated TraversalSource.Builder and TraversalEngine.
[ https://issues.apache.org/jira/browse/TINKERPOP-1143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1143: Fix Version/s: 3.4.0 > Remove deprecated TraversalSource.Builder and TraversalEngine. > -- > > Key: TINKERPOP-1143 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1143 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.0-incubating >Reporter: Marko A. Rodriguez >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1707) Remove deprecated AuthenticationSettings.className option
[ https://issues.apache.org/jira/browse/TINKERPOP-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1707: Fix Version/s: 3.4.0 > Remove deprecated AuthenticationSettings.className option > - > > Key: TINKERPOP-1707 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1707 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.5 >Reporter: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1707) Remove deprecated AuthenticationSettings.className option
[ https://issues.apache.org/jira/browse/TINKERPOP-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1707: --- Assignee: stephen mallette > Remove deprecated AuthenticationSettings.className option > - > > Key: TINKERPOP-1707 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1707 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.5 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1674) Traversals reference elements after deletion
[ https://issues.apache.org/jira/browse/TINKERPOP-1674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1674. --- Resolution: Cannot Reproduce closing pending additional information (i.e. an easier/more direct approach to recreating the problem or something that pins the problem to some particular aspect of tinkerpop itself) > Traversals reference elements after deletion > > > Key: TINKERPOP-1674 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1674 > Project: TinkerPop > Issue Type: Bug > Components: neo4j >Affects Versions: 3.2.3, 3.2.4 > Environment: Demonstrated on Ubuntu, OSX >Reporter: SmedbergM >Priority: Major > > In a multiprocessor environment, a traversal will sometimes reference > vertices which another thread/processor has already deleted. This causes the > entire traversal to fail in an unrecoverable fashion and throw an uncaught > exception. > MWE: https://github.com/SmedbergM/neo4j-deletion-error > Gist containing logging output: > https://gist.github.com/SmedbergM/5fcf0d98a255e7d346b85b98bcc1ec0d > This error has cropped up persistently over several months/releases (dating > back to 3.1.x or earlier). I have not tried to diff back/bisect to find > introduction time of the behavior. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1817) OLAP loses vertex labels
[ https://issues.apache.org/jira/browse/TINKERPOP-1817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1817: Issue Type: Improvement (was: Bug) My understanding here is that we never really intended to support labels here so this really isn't a "bug" - reclassified this issue to an "enhancement". > OLAP loses vertex labels > > > Key: TINKERPOP-1817 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1817 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.3.0, 3.2.6 >Reporter: Daniel Kuppitz >Priority: Major > > Working on this SO question: > https://stackoverflow.com/questions/46962237/how-to-perform-cross-join-on-different-vertices-in-gremlin-tinkerpop/46977603 > ...I noticed that the connected components query randomly loses the vertex > labels. > *Init Graph:* > {noformat} > graph = TinkerGraph.open() > g = graph.traversal() > a = graph.addVertex(label, "person", "user", "A") > b = graph.addVertex(label, "person", "user", "B") > c = graph.addVertex(label, "person", "user", "C") > d = graph.addVertex(label, "person", "user", "D") > one = graph.addVertex('rec_id') > one.property('ids', '1') > two = graph.addVertex('rec_id') > two.property('ids', '2') > three = graph.addVertex('rec_id') > three.property('ids', '3') > four = graph.addVertex('rec_id') > four.property('ids', '4') > five = graph.addVertex('rec_id') > five.property('ids', '5') > a.addEdge('part_of',one) > a.addEdge('part_of',two) > b.addEdge('part_of', three) > b.addEdge('part_of',four) > c.addEdge('part_of',five) > d.addEdge('part_of',four) > d.addEdge('part_of',two) > g = graph.traversal().withComputer() > {noformat} > *Query:* > {noformat} > g.V(). > emit(cyclicPath().or().not(both())). > repeat(both()). > until(cyclicPath()). > aggregate("p").by(path()).cap("p"). > unfold().limit(local, 1).dedup(). > map(__.as("v").select("p").unfold(). > filter(unfold().where(eq("v"))). > unfold().dedup().order().by(id).fold()).dedup(). > project("Users","associated_ids"). > by(unfold().label().fold()). > by(unfold().label().fold()) > {noformat} > *Sample Output:* > {noformat} > gremlin> g.V(). > ..1> emit(cyclicPath().or().not(both())). > ..2> repeat(both()). > ..3> until(cyclicPath()). > ..4> aggregate("p").by(path()).cap("p"). > ..5> unfold().limit(local, 1).dedup(). > ..6> map(__.as("v").select("p").unfold(). > ..7> filter(unfold().where(eq("v"))). > ..8> unfold().dedup().order().by(id).fold()).dedup(). > ..9> project("Users","associated_ids"). > .10> by(unfold().label()./*hasLabel("person").*/fold()). > .11> by(unfold().label()./*hasLabel("rec_id").*/fold()) > ==>[Users:[person,person,person,vertex,vertex,vertex,vertex],associated_ids:[person,person,person,vertex,vertex,vertex,vertex]] > ==>[Users:[vertex,rec_id],associated_ids:[vertex,rec_id]] > gremlin> g = graph.traversal().withComputer() > ==>graphtraversalsource[tinkergraph[vertices:9 edges:7], graphcomputer] > gremlin> g.V(). > ..1> emit(cyclicPath().or().not(both())). > ..2> repeat(both()). > ..3> until(cyclicPath()). > ..4> aggregate("p").by(path()).cap("p"). > ..5> unfold().limit(local, 1).dedup(). > ..6> map(__.as("v").select("p").unfold(). > ..7> filter(unfold().where(eq("v"))). > ..8> unfold().dedup().order().by(id).fold()).dedup(). > ..9> project("Users","associated_ids"). > .10> by(unfold().label()./*hasLabel("person").*/fold()). > .11> by(unfold().label()./*hasLabel("rec_id").*/fold()) > ==>[Users:[person,person,person,rec_id,vertex,vertex,vertex],associated_ids:[person,person,person,rec_id,vertex,vertex,vertex]] > ==>[Users:[vertex,rec_id],associated_ids:[vertex,rec_id]] > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-831) How should OLAP treat Collection objects? No contract is specified.
[ https://issues.apache.org/jira/browse/TINKERPOP-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-831: --- Issue Type: Improvement (was: Bug) > How should OLAP treat Collection objects? No contract is specified. > > > Key: TINKERPOP-831 > URL: https://issues.apache.org/jira/browse/TINKERPOP-831 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.0.2-incubating >Reporter: Marko A. Rodriguez >Assignee: Marko A. Rodriguez >Priority: Major > Labels: breaking > > Assume the following OLAP query: > {code} > g.V.group.by(label).by().by(order(local).by('name')) > {code} > The {{Map}} that is processed by {{GroupMapReduce}} > doesn't have "real vertices." For TinkerGraph/Spark/Giraph, we use > {{DetachedVertices}}. However, we don't have a specification for forcing this > on vendors. We need a contract so its not "who knows?! -- pura vida > -- namaste -- comme ci, comme ça" -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1831) Refactor EventStrategy
[ https://issues.apache.org/jira/browse/TINKERPOP-1831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1831: Fix Version/s: 3.4.0 > Refactor EventStrategy > --- > > Key: TINKERPOP-1831 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1831 > Project: TinkerPop > Issue Type: Improvement > Components: structure >Affects Versions: 3.2.6 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > > {{EventStrategy}} has a few issues that could be smoothed out, but not > without an allowance for breaking change in the API: > * For the creation of new properties, an empty detached property is created > to represent it - now that detachment is configurable, that doesn't always > make sense. For example, if you configured for reference detachment then you > would probably want a {{ReferenceProperty}} instead. Not sure how this should > be resolved, but it probably needs a change to the eventing API itself > * Detachment is configured a bit strangely with the use of {{null}} and > passing classes for the appropriate detachment factorieswould be nicer to > have an interface to represent this stuff. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1705) Remove deprecated rebindings option
[ https://issues.apache.org/jira/browse/TINKERPOP-1705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1705: Fix Version/s: 3.4.0 > Remove deprecated rebindings option > --- > > Key: TINKERPOP-1705 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1705 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.5 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > > "rebinding" as an argument was deprecated a long time ago in favor of > "aliases". -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1757) GiraphGraphComputer does not start Zookeeper in local mode
[ https://issues.apache.org/jira/browse/TINKERPOP-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16425681#comment-16425681 ] stephen mallette commented on TINKERPOP-1757: - Given that we haven't dropped Giraph in TINKERPOP-1930 i think we don't need to really do anything extra with giraph at this point - this is marked as "trivial" - is it truly a trivial fix [~HadoopMarc] ? if so, do you feel like offering a pull request or do we just close this one? > GiraphGraphComputer does not start Zookeeper in local mode > -- > > Key: TINKERPOP-1757 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1757 > Project: TinkerPop > Issue Type: Bug > Components: hadoop >Affects Versions: 3.3.0, 3.2.6 > Environment: gremlin-console in Ubuntu with Oracle java 8 >Reporter: Marc de Lignie >Priority: Trivial > > As discussed in > [https://groups.google.com/forum/#!topic/gremlin-users/Ztbr_uJhoxY] running > GiraphGraphComputer in local mode (without an external or pseudo hadoop > cluster) requires the following configured properties (add section local to > the hadoop properties file): > {code:java} > gremlin.hadoop.inputLocation=data/tinkerpop-modern.kryo > giraph.minWorkers=1 > giraph.maxWorkers=1 > giraph.SplitMasterWorker=false > mapreduce.job.maps=4 > mapreduce.job.reduces=2 > {code} > The real problem is that GiraphGraphComputer does not manage to start its > Zookeeper service because it gets relative classpath items from somewhere > (gremlin-console provides the acual shell command used to attempt starting > Zookeeper in its logging). > Current workaround is to start gremlin-console as follows: > {code:java} > export CLASSPATH=$PWD/lib/* > bin/gremlin.sh > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1903) Credentials DSL should use the Java annotation processor
[ https://issues.apache.org/jira/browse/TINKERPOP-1903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1903: Fix Version/s: 3.3.3 deprecating for 3.3.3 - will remove the old method for 3.4.0 > Credentials DSL should use the Java annotation processor > > > Key: TINKERPOP-1903 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1903 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: deprecation > Fix For: 3.3.3 > > > This content is a bit outdated - > http://tinkerpop.apache.org/docs/current/reference/#credentials-dsl > uses the old method of DSL development prior to when we established the > annotation processor - need to fix both the code itself and the documentation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1903) Credentials DSL should use the Java annotation processor
[ https://issues.apache.org/jira/browse/TINKERPOP-1903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1903: Labels: deprecation (was: ) > Credentials DSL should use the Java annotation processor > > > Key: TINKERPOP-1903 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1903 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.7 >Reporter: stephen mallette >Priority: Major > Labels: deprecation > > This content is a bit outdated - > http://tinkerpop.apache.org/docs/current/reference/#credentials-dsl > uses the old method of DSL development prior to when we established the > annotation processor - need to fix both the code itself and the documentation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1903) Credentials DSL should use the Java annotation processor
[ https://issues.apache.org/jira/browse/TINKERPOP-1903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1903: --- Assignee: stephen mallette > Credentials DSL should use the Java annotation processor > > > Key: TINKERPOP-1903 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1903 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: deprecation > > This content is a bit outdated - > http://tinkerpop.apache.org/docs/current/reference/#credentials-dsl > uses the old method of DSL development prior to when we established the > annotation processor - need to fix both the code itself and the documentation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1048) Vertex lookups by id are inconsistent
[ https://issues.apache.org/jira/browse/TINKERPOP-1048?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1048: --- Assignee: (was: stephen mallette) > Vertex lookups by id are inconsistent > - > > Key: TINKERPOP-1048 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1048 > Project: TinkerPop > Issue Type: Bug > Components: tinkergraph >Affects Versions: 3.1.1-incubating >Reporter: Daniel Kuppitz >Priority: Major > > {{graph.vertices(id)}}, {{g.V(id)}} and {{g.V().hasId(id)}} should all return > the same result. However, currently only the latter respects the > {{toString()}} representation of ids. > {noformat} > gremlin> g.addV().id() > ==>12 > gremlin> graph.vertices("12") > gremlin> g.V("12") > gremlin> g.V().hasId("12") > ==>v[12] > {noformat} > Inconsistent number comparison with Contains: > {noformat} > gremlin> conf = new BaseConfiguration() > ==>org.apache.commons.configuration.BaseConfiguration@7048535f > gremlin> conf.setProperty("gremlin.tinkergraph.vertexIdManager","LONG") > ==>null > gremlin> conf.setProperty("gremlin.tinkergraph.edgeIdManager","LONG") > ==>null > gremlin> graph = TinkerGraph.open(conf) > ==>tinkergraph[vertices:0 edges:0] > gremlin> graph.io(gryo()).readGraph('data/tinkerpop-modern.kryo') > ==>null > gremlin> g = graph.traversal() > ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard] > gremlin> g.V().hasId(within(1..6)).out().hasId(within(1..6)) > gremlin> g.V().hasId(within(1..6)).out().hasId(between(0,7)) > ==>v[3] > ==>v[2] > ==>v[4] > ==>v[5] > ==>v[3] > ==>v[3] > {noformat} > `P.within` and `P.without` rely on `Collection.contains()` which ends up > doing an Object type comparison during the equality check. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1757) GiraphGraphComputer does not start Zookeeper in local mode
[ https://issues.apache.org/jira/browse/TINKERPOP-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1757. --- Resolution: Won't Fix closing per discussion above > GiraphGraphComputer does not start Zookeeper in local mode > -- > > Key: TINKERPOP-1757 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1757 > Project: TinkerPop > Issue Type: Bug > Components: hadoop >Affects Versions: 3.3.0, 3.2.6 > Environment: gremlin-console in Ubuntu with Oracle java 8 >Reporter: Marc de Lignie >Priority: Trivial > > As discussed in > [https://groups.google.com/forum/#!topic/gremlin-users/Ztbr_uJhoxY] running > GiraphGraphComputer in local mode (without an external or pseudo hadoop > cluster) requires the following configured properties (add section local to > the hadoop properties file): > {code:java} > gremlin.hadoop.inputLocation=data/tinkerpop-modern.kryo > giraph.minWorkers=1 > giraph.maxWorkers=1 > giraph.SplitMasterWorker=false > mapreduce.job.maps=4 > mapreduce.job.reduces=2 > {code} > The real problem is that GiraphGraphComputer does not manage to start its > Zookeeper service because it gets relative classpath items from somewhere > (gremlin-console provides the acual shell command used to attempt starting > Zookeeper in its logging). > Current workaround is to start gremlin-console as follows: > {code:java} > export CLASSPATH=$PWD/lib/* > bin/gremlin.sh > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1936) Performance enhancement to Bytecode deserialization
stephen mallette created TINKERPOP-1936: --- Summary: Performance enhancement to Bytecode deserialization Key: TINKERPOP-1936 URL: https://issues.apache.org/jira/browse/TINKERPOP-1936 Project: TinkerPop Issue Type: Improvement Components: io Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 There is a bad bottleneck in Jackson deserialization of {{Bytecode}}. It doesn't become extremely apparent until higher levels of load are reached and I think is even more evident after the latest bump in Jackson version where a bug fix in Jackson itself changed the way in which deserialization caching for collections was handled. {{Bytecode}} deserialization was relying on the standard Jackson collection deserializers and it costs quite considerably in terms of synchronized access to the deserializer cache and to the reflection calls required to sort out types. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1927) Gherkin scenario expects list with duplicates, but receives g:Set
[ https://issues.apache.org/jira/browse/TINKERPOP-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1927. --- Resolution: Fixed Fix Version/s: 3.3.3 3.4.0 > Gherkin scenario expects list with duplicates, but receives g:Set > - > > Key: TINKERPOP-1927 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1927 > Project: TinkerPop > Issue Type: Bug > Components: dotnet, javascript, python, test-suite >Affects Versions: 3.3.1 >Reporter: Florian Hockmann >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.3.3 > > > The scenario > {{g_V_storeXaX_byXoutEXcreatedX_countX_out_out_storeXaX_byXinEXcreatedX_weight_sumX}} > expects > {code:java} > | result | > | d[1].l | > | d[1].l | > | d[0].l | > | d[0].l | > | d[0].l | > | d[2].l | > | d[1.0].d | > | d[1.0].d | > {code} > but we receive this from the server: > {code:java} > { > "@type": "g:Set", > "@value": [ > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 1 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 0 > }, > { > "@type": "g:Int64", > "@value": 2 > }, > { > "@type": "g:Double", > "@value": 1 > }, > { > "@type": "g:Double", > "@value": 1 > } > ] > } > {code} > The set returned by the server contains 4 duplicates that shouldn't be part > of the expected result in the scenario. > Unfortunately, while working on TINKERPOP-1865 we noticed that gremlin-python > and gremlin-javascript fail when the scenario is fixed like that. So those > two GLVs probably need to be fixed to handle {{g:Set}} correctly. > After fixing the scenario, it can be removed from the list of ignored > scenarios in Gremlin.Net. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1937) Pass bytecode through ScriptEngine if Bindings are present
stephen mallette created TINKERPOP-1937: --- Summary: Pass bytecode through ScriptEngine if Bindings are present Key: TINKERPOP-1937 URL: https://issues.apache.org/jira/browse/TINKERPOP-1937 Project: TinkerPop Issue Type: Improvement Components: server Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 We currently only pass bytecode through the {{ScriptEngine}} if it has a lambda, but it seems to make sense to do the same with bytecode that has {{Bindings}} as then caching will kick in and there should be a performance improvement when using parameters just as we get with scripts. I've looked into ways to get the {{JavaTranslator}} to optimize based on {{Bindings}} but I think we've coded ourselves into a corner with there insofar as trying to make this enhancement without breaking changes. 3.4.0 might be the first chance to make fixes in this regard. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1410) mvn install -Dmaven.test.skip=true doesn't work on a clean machine
[ https://issues.apache.org/jira/browse/TINKERPOP-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1410: --- Assignee: stephen mallette Labels: breaking (was: ) Priority: Minor (was: Major) Fix Version/s: 3.4.0 Issue Type: Improvement (was: Bug) > mvn install -Dmaven.test.skip=true doesn't work on a clean machine > -- > > Key: TINKERPOP-1410 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1410 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.1 >Reporter: Bryn Cooke >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > > {noformat}mvn install -Dmaven.test.skip=true{noformat} > gives > {noformat} > Failed to execute goal on project spark-gremlin: Could not resolve > dependencies for project > org.apache.tinkerpop:spark-gremlin:jar:3.2.2-SNAPSHOT: Could not find > artifact org.apache.tinkerpop:hadoop-gremlin:jar:tests:3.2.2-SNAPSHOT in > apache.snapshots (http://repository.apache.org/snapshots) -> [Help 1] > [ERROR] {noformat} > The reason for this is that skipping tests also skips creating the test jar > artefact for hadoop-gremlin. > https://issues.apache.org/jira/browse/MJAR-138 > Really the prefferred way for creating test jars is to have them as a > separate project: > https://maven.apache.org/plugins/maven-jar-plugin/examples/create-test-jar.html -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1939) running spark-gremlin in gremlin console
[ https://issues.apache.org/jira/browse/TINKERPOP-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16442415#comment-16442415 ] stephen mallette commented on TINKERPOP-1939: - You marked this as failing with 3.3.2, but I'm not able to recreate this issue. After doing: {code} gremlin> Gremlin.version() ==>3.3.2 gremlin> :install org.apache.tinkerpop hadoop-gremlin 3.3.2 ==>Loaded: [org.apache.tinkerpop, hadoop-gremlin, 3.3.2] - restart the console to use [tinkerpop.hadoop] gremlin> :install org.apache.tinkerpop spark-gremlin 3.3.2 ==>Loaded: [org.apache.tinkerpop, spark-gremlin, 3.3.2] - restart the console to use [tinkerpop.spark] gremlin> :plugin use tinkerpop.hadoop ==>tinkerpop.hadoop activated gremlin> :plugin use tinkerpop.spark ==>tinkerpop.spark activated {code} After restarting the console, I get no errors. Also, note that after install I have the following in my directories {code} smallette@ubuntu:~/jvm/apache-tinkerpop-gremlin-console-3.3.2$ find . -name "*2.4.11*" smallette@ubuntu:~/jvm/apache-tinkerpop-gremlin-console-3.3.2$ find . -name "*2.4.14*" ./lib/groovy-jsr223-2.4.14-indy.jar ./lib/groovy-sql-2.4.14-indy.jar ./lib/groovy-json-2.4.14-indy.jar ./lib/groovy-console-2.4.14.jar ./lib/groovy-xml-2.4.14.jar ./lib/groovy-templates-2.4.14.jar ./lib/groovy-swing-2.4.14.jar ./lib/groovy-2.4.14.jar ./lib/groovy-groovysh-2.4.14-indy.jar ./lib/groovy-2.4.14-indy.jar ./ext/spark-gremlin/lib/groovy-jsr223-2.4.14-indy.jar ./ext/spark-gremlin/lib/groovy-json-2.4.14-indy.jar ./ext/spark-gremlin/lib/groovy-console-2.4.14.jar ./ext/spark-gremlin/lib/groovy-xml-2.4.14.jar ./ext/spark-gremlin/lib/groovy-templates-2.4.14.jar ./ext/spark-gremlin/lib/groovy-swing-2.4.14.jar ./ext/spark-gremlin/lib/groovy-groovysh-2.4.14-indy.jar ./ext/spark-gremlin/lib/groovy-2.4.14-indy.jar ./ext/hadoop-gremlin/lib/groovy-jsr223-2.4.14-indy.jar ./ext/hadoop-gremlin/lib/groovy-json-2.4.14-indy.jar ./ext/hadoop-gremlin/lib/groovy-console-2.4.14.jar ./ext/hadoop-gremlin/lib/groovy-xml-2.4.14.jar ./ext/hadoop-gremlin/lib/groovy-templates-2.4.14.jar ./ext/hadoop-gremlin/lib/groovy-swing-2.4.14.jar ./ext/hadoop-gremlin/lib/groovy-groovysh-2.4.14-indy.jar ./ext/hadoop-gremlin/lib/groovy-2.4.14-indy.jar {code} As you can see, there is no "2.4.11" files? Could you please provide a similar set of steps to demonstrate how this is happening for you? > running spark-gremlin in gremlin console > > > Key: TINKERPOP-1939 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1939 > Project: TinkerPop > Issue Type: Improvement > Components: plugin >Affects Versions: 3.3.2 >Reporter: Prashanth Madi >Priority: Minor > > After installing spark-gremlin, if we try to start gremlin console. it would > give below error.. > Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. > Module [groovy-swing is loaded in version 2.4.14 and you are trying to load > version 2.4.11 > > I can workaround it by deleting files manually but there should an option to > ignore such error or use latest version in future releases. Also, if possible > update spark-gremlin dependencies -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1939) running spark-gremlin in gremlin console
[ https://issues.apache.org/jira/browse/TINKERPOP-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1939: Issue Type: Improvement (was: Task) > running spark-gremlin in gremlin console > > > Key: TINKERPOP-1939 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1939 > Project: TinkerPop > Issue Type: Improvement > Components: plugin >Affects Versions: 3.3.2 >Reporter: Prashanth Madi >Priority: Minor > > After installing spark-gremlin, if we try to start gremlin console. it would > give below error.. > Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. > Module [groovy-swing is loaded in version 2.4.14 and you are trying to load > version 2.4.11 > > I can workaround it by deleting files manually but there should an option to > ignore such error or use latest version in future releases. Also, if possible > update spark-gremlin dependencies -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1940) Command parsing problem with files for long options in gremlin.sh
[ https://issues.apache.org/jira/browse/TINKERPOP-1940?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1940. --- Resolution: Not A Problem Fix Version/s: (was: 3.2.9) (was: 3.3.3) (was: 3.4.0) > Command parsing problem with files for long options in gremlin.sh > - > > Key: TINKERPOP-1940 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1940 > Project: TinkerPop > Issue Type: Improvement > Components: console >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Minor > > A bit of an edge case, but shows that there's still something amiss in the > command parser: > {code} > $ echo '1+1' > '-l' > $ cat -- -l > 1+1 > $ bin/gremlin.sh --interactive -l > bin/gremlin.sh: line 85: $3: unbound variable > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1940) Command parsing problem with files for long options in gremlin.sh
stephen mallette created TINKERPOP-1940: --- Summary: Command parsing problem with files for long options in gremlin.sh Key: TINKERPOP-1940 URL: https://issues.apache.org/jira/browse/TINKERPOP-1940 Project: TinkerPop Issue Type: Improvement Components: console Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 A bit of an edge case, but shows that there's still something amiss in the command parser: {code} $ echo '1+1' > '-l' $ cat -- -l 1+1 $ bin/gremlin.sh --interactive -l bin/gremlin.sh: line 85: $3: unbound variable {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1941) Remove deprecated Structure API exception methods
[ https://issues.apache.org/jira/browse/TINKERPOP-1941?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1941: Labels: breaking (was: ) > Remove deprecated Structure API exception methods > - > > Key: TINKERPOP-1941 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1941 > Project: TinkerPop > Issue Type: Improvement > Components: structure >Affects Versions: 3.3.2 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > > These exception were related to "element not found" situations. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1941) Remove deprecated Structure API exception methods
stephen mallette created TINKERPOP-1941: --- Summary: Remove deprecated Structure API exception methods Key: TINKERPOP-1941 URL: https://issues.apache.org/jira/browse/TINKERPOP-1941 Project: TinkerPop Issue Type: Improvement Components: structure Affects Versions: 3.3.2 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-623) More output for OLAP jobs
[ https://issues.apache.org/jira/browse/TINKERPOP-623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-623. -- Resolution: Won't Do Talked with [~dkuppitz] - this is no longer relevant. > More output for OLAP jobs > - > > Key: TINKERPOP-623 > URL: https://issues.apache.org/jira/browse/TINKERPOP-623 > Project: TinkerPop > Issue Type: Improvement > Components: console, hadoop >Affects Versions: 3.0.2-incubating >Reporter: Daniel Kuppitz >Priority: Minor > > Long running OLAP / Giraph jobs leave the user in the dark. You have to check > several logs to see where you currently are. The REPL just shows > {noformat} > ... > INFO org.apache.hadoop.mapred.JobClient - map 99% reduce 0% > {noformat} > ... for hours. Spark is better, it seems to have its own progress bar that's > shown in the REPL. For Giraph it would be great to have more than just the > standard Hadoop job output, so that users get the feeling that something is > done under the hood (use {{Future}} to query for updates?) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1950) Traversal construction performance enhancements
stephen mallette created TINKERPOP-1950: --- Summary: Traversal construction performance enhancements Key: TINKERPOP-1950 URL: https://issues.apache.org/jira/browse/TINKERPOP-1950 Project: TinkerPop Issue Type: Improvement Components: process Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 The process of constructing a {{Traversal}} could be made more efficient. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1936) Performance enhancement to Bytecode deserialization
[ https://issues.apache.org/jira/browse/TINKERPOP-1936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1936. --- Resolution: Fixed > Performance enhancement to Bytecode deserialization > --- > > Key: TINKERPOP-1936 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1936 > Project: TinkerPop > Issue Type: Improvement > Components: io >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > There is a bad bottleneck in Jackson deserialization of {{Bytecode}}. It > doesn't become extremely apparent until higher levels of load are reached and > I think is even more evident after the latest bump in Jackson version where a > bug fix in Jackson itself changed the way in which deserialization caching > for collections was handled. {{Bytecode}} deserialization was relying on the > standard Jackson collection deserializers and it costs quite considerably in > terms of synchronized access to the deserializer cache and to the reflection > calls required to sort out types. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16445876#comment-16445876 ] stephen mallette commented on TINKERPOP-1948: - Predefined lambdas sounds kinda interesting actually. Might be interesting to have a little library of those to deal with certain situations we see over and over again. Probably worth a DISCUSS thread at least to see where things go. > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.3.2 >Reporter: Daniel C. Weber >Priority: Minor > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1937) Pass bytecode through ScriptEngine if Bindings are present
[ https://issues.apache.org/jira/browse/TINKERPOP-1937?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1937. --- Resolution: Won't Do Fix Version/s: (was: 3.2.9) (was: 3.3.3) (was: 3.4.0) Interestingly, I didn't see much of an improvement for doing this. Seemed like a bit of a hack anyway, but thought it was worth investigating. > Pass bytecode through ScriptEngine if Bindings are present > -- > > Key: TINKERPOP-1937 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1937 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > > We currently only pass bytecode through the {{ScriptEngine}} if it has a > lambda, but it seems to make sense to do the same with bytecode that has > {{Bindings}} as then caching will kick in and there should be a performance > improvement when using parameters just as we get with scripts. > I've looked into ways to get the {{JavaTranslator}} to optimize based on > {{Bindings}} but I think we've coded ourselves into a corner with there > insofar as trying to make this enhancement without breaking changes. 3.4.0 > might be the first chance to make fixes in this regard. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1934) Bump to latest version of httpclient
[ https://issues.apache.org/jira/browse/TINKERPOP-1934?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1934. --- Resolution: Done > Bump to latest version of httpclient > > > Key: TINKERPOP-1934 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1934 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > Should probably go to 4.5.5 which will cleanly get us away from: > https://nvd.nist.gov/vuln/detail/CVE-2013-4366 > We seem to reference httpclient in a bunch of places - should probably unify > the version if possible. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1410) mvn install -Dmaven.test.skip=true doesn't work on a clean machine
[ https://issues.apache.org/jira/browse/TINKERPOP-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1410. --- Resolution: Done > mvn install -Dmaven.test.skip=true doesn't work on a clean machine > -- > > Key: TINKERPOP-1410 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1410 > Project: TinkerPop > Issue Type: Improvement > Components: build-release >Affects Versions: 3.2.1 >Reporter: Bryn Cooke >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > > {noformat}mvn install -Dmaven.test.skip=true{noformat} > gives > {noformat} > Failed to execute goal on project spark-gremlin: Could not resolve > dependencies for project > org.apache.tinkerpop:spark-gremlin:jar:3.2.2-SNAPSHOT: Could not find > artifact org.apache.tinkerpop:hadoop-gremlin:jar:tests:3.2.2-SNAPSHOT in > apache.snapshots (http://repository.apache.org/snapshots) -> [Help 1] > [ERROR] {noformat} > The reason for this is that skipping tests also skips creating the test jar > artefact for hadoop-gremlin. > https://issues.apache.org/jira/browse/MJAR-138 > Really the prefferred way for creating test jars is to have them as a > separate project: > https://maven.apache.org/plugins/maven-jar-plugin/examples/create-test-jar.html -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1705) Remove deprecated rebindings option
[ https://issues.apache.org/jira/browse/TINKERPOP-1705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1705. --- Resolution: Done > Remove deprecated rebindings option > --- > > Key: TINKERPOP-1705 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1705 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.5 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > > "rebinding" as an argument was deprecated a long time ago in favor of > "aliases". -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1947) Path history isn't preserved for keys in mutations
stephen mallette created TINKERPOP-1947: --- Summary: Path history isn't preserved for keys in mutations Key: TINKERPOP-1947 URL: https://issues.apache.org/jira/browse/TINKERPOP-1947 Project: TinkerPop Issue Type: Bug Components: process Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 {code} gremlin> g.withSideEffect('k','name').addV('person').property(select('k'),'stephen') The provided traverser does not map to a value: false->[SelectOneStep(k)] Type ':help' or ':h' for help. Display stack trace? [yN][An {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1946) Remove the deprecated Credentials DSL infrastructure
stephen mallette created TINKERPOP-1946: --- Summary: Remove the deprecated Credentials DSL infrastructure Key: TINKERPOP-1946 URL: https://issues.apache.org/jira/browse/TINKERPOP-1946 Project: TinkerPop Issue Type: Improvement Components: groovy Affects Versions: 3.3.2 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0 TINKERPOP-1903 deprecated the old-style of DSL development for the Credential system. It can be removed now. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1903) Credentials DSL should use the Java annotation processor
[ https://issues.apache.org/jira/browse/TINKERPOP-1903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1903. --- Resolution: Done Not marking this for fixed on 3.4.0 since I think it will be removed in that version via TINKERPOP-1946 > Credentials DSL should use the Java annotation processor > > > Key: TINKERPOP-1903 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1903 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.2.7 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: deprecation > Fix For: 3.3.3 > > > This content is a bit outdated - > http://tinkerpop.apache.org/docs/current/reference/#credentials-dsl > uses the old method of DSL development prior to when we established the > annotation processor - need to fix both the code itself and the documentation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16445589#comment-16445589 ] stephen mallette commented on TINKERPOP-1948: - I sorta wish that we hadn't brought in all the "time" oriented types. I feel like much of that came prior to our full understanding of how GLVs would develop. Given that feeling I'd rather not expose new features that create dependence on them. [~dkuppitz] has dealt with the sum()/max() stuff more than anyone - we'll see what he thinks. > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.2 >Reporter: Daniel Weber >Priority: Major > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1948: Priority: Minor (was: Major) > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.2 >Reporter: Daniel Weber >Priority: Minor > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (TINKERPOP-1949) Formatting error on website
[ https://issues.apache.org/jira/browse/TINKERPOP-1949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reopened TINKERPOP-1949: - > Formatting error on website > --- > > Key: TINKERPOP-1949 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1949 > Project: TinkerPop > Issue Type: Bug > Components: documentation >Affects Versions: 3.3.2 > Environment: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 > (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 > on Debian GNU/Linux Sid. > and on firefox as well. >Reporter: james michael dupont >Assignee: stephen mallette >Priority: Trivial > Fix For: 3.4.0 > > Attachments: Screenshot from 2018-04-20 06-36-41.png > > Original Estimate: 1m > Remaining Estimate: 1m > > The bottom of the page [http://tinkerpop.apache.org/gremlin.html] looks > strange > it says for me : > {{}} > {quote}{{Related Resources Previous Next $('.carousel[data-type="multi"] > .item').each(function(){ var next = $(this).next(); if (!next.length) { // if > ther isn't a next next = $(this).siblings(':first'); // this is the first } > next.children(':first-child').clone().appendTo($(this)); // put the next ones > on the array for (var i=0;i<2;i++) { // THIS LOOP SPITS OUT EXTRA ITEMS TO > THE CAROUSEL next=next.next(); if (!next.length) { next > =$(this).siblings(':first'); } > next.children(':first-child').clone().appendTo($(this)); } });}} > {quote} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1949) Formatting error on website
[ https://issues.apache.org/jira/browse/TINKERPOP-1949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1949. --- Resolution: Fixed Assignee: stephen mallette Fix Version/s: 3.4.0 Thanks for reporting this. I guess that has been broken for a long time somehow and no one has ever noticed. https://github.com/apache/tinkerpop/commit/f2a59544b3a38e447a84aee81cf54db4edaf7daf I've re-published the site, but it may take a few minutes to propagate the change on apache infrastructure. > Formatting error on website > --- > > Key: TINKERPOP-1949 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1949 > Project: TinkerPop > Issue Type: Bug > Components: documentation >Affects Versions: 3.3.2 > Environment: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 > (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 > on Debian GNU/Linux Sid. > and on firefox as well. >Reporter: james michael dupont >Assignee: stephen mallette >Priority: Trivial > Fix For: 3.4.0 > > Attachments: Screenshot from 2018-04-20 06-36-41.png > > Original Estimate: 1m > Remaining Estimate: 1m > > The bottom of the page [http://tinkerpop.apache.org/gremlin.html] looks > strange > it says for me : > {{}} > {quote}{{Related Resources Previous Next $('.carousel[data-type="multi"] > .item').each(function(){ var next = $(this).next(); if (!next.length) { // if > ther isn't a next next = $(this).siblings(':first'); // this is the first } > next.children(':first-child').clone().appendTo($(this)); // put the next ones > on the array for (var i=0;i<2;i++) { // THIS LOOP SPITS OUT EXTRA ITEMS TO > THE CAROUSEL next=next.next(); if (!next.length) { next > =$(this).siblings(':first'); } > next.children(':first-child').clone().appendTo($(this)); } });}} > {quote} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1949) Formatting error on website
[ https://issues.apache.org/jira/browse/TINKERPOP-1949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1949: Affects Version/s: 3.3.2 > Formatting error on website > --- > > Key: TINKERPOP-1949 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1949 > Project: TinkerPop > Issue Type: Bug > Components: documentation >Affects Versions: 3.3.2 > Environment: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 > (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 > on Debian GNU/Linux Sid. > and on firefox as well. >Reporter: james michael dupont >Assignee: stephen mallette >Priority: Trivial > Fix For: 3.4.0 > > Attachments: Screenshot from 2018-04-20 06-36-41.png > > Original Estimate: 1m > Remaining Estimate: 1m > > The bottom of the page [http://tinkerpop.apache.org/gremlin.html] looks > strange > it says for me : > {{}} > {quote}{{Related Resources Previous Next $('.carousel[data-type="multi"] > .item').each(function(){ var next = $(this).next(); if (!next.length) { // if > ther isn't a next next = $(this).siblings(':first'); // this is the first } > next.children(':first-child').clone().appendTo($(this)); // put the next ones > on the array for (var i=0;i<2;i++) { // THIS LOOP SPITS OUT EXTRA ITEMS TO > THE CAROUSEL next=next.next(); if (!next.length) { next > =$(this).siblings(':first'); } > next.children(':first-child').clone().appendTo($(this)); } });}} > {quote} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1949) Formatting error on website
[ https://issues.apache.org/jira/browse/TINKERPOP-1949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1949. --- Resolution: Fixed > Formatting error on website > --- > > Key: TINKERPOP-1949 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1949 > Project: TinkerPop > Issue Type: Bug > Components: documentation >Affects Versions: 3.3.2 > Environment: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 > (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 > on Debian GNU/Linux Sid. > and on firefox as well. >Reporter: james michael dupont >Assignee: stephen mallette >Priority: Trivial > Fix For: 3.4.0 > > Attachments: Screenshot from 2018-04-20 06-36-41.png > > Original Estimate: 1m > Remaining Estimate: 1m > > The bottom of the page [http://tinkerpop.apache.org/gremlin.html] looks > strange > it says for me : > {{}} > {quote}{{Related Resources Previous Next $('.carousel[data-type="multi"] > .item').each(function(){ var next = $(this).next(); if (!next.length) { // if > ther isn't a next next = $(this).siblings(':first'); // this is the first } > next.children(':first-child').clone().appendTo($(this)); // put the next ones > on the array for (var i=0;i<2;i++) { // THIS LOOP SPITS OUT EXTRA ITEMS TO > THE CAROUSEL next=next.next(); if (!next.length) { next > =$(this).siblings(':first'); } > next.children(':first-child').clone().appendTo($(this)); } });}} > {quote} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1948: Component/s: (was: structure) > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.2 >Reporter: Daniel Weber >Priority: Major > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1948: Affects Version/s: 3.3.2 > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.2 >Reporter: Daniel Weber >Priority: Minor > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1948) Sum-step should work on properties of type 'Duration'.
[ https://issues.apache.org/jira/browse/TINKERPOP-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16445607#comment-16445607 ] stephen mallette commented on TINKERPOP-1948: - Yeah - we bound ourselves quite nicely to the JVM with those - we have with much of the typing system. At first it was an attempt to match GraphSON to Gryo (which is fully JVM based) but that made little sense once GLVs became relevant. While I agree that summing seems natural, the utility of {{Duration}} with {{sum()}} and similar steps seems minimal because I'm not so sure that there are many graphs that allow you to store a {{Duration}}. TinkerGraph is one as it is accepts any JVM {{Object}} for a value, but I'm pretty certain that the vast majority of graphs don't handle that type natively so you wouldn't typically be in a position to {{sum()}} or {{max()}} or whatever in the first place. > Sum-step should work on properties of type 'Duration'. > -- > > Key: TINKERPOP-1948 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1948 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.2 >Reporter: Daniel C. Weber >Priority: Minor > > Consider the following query: > {code:java} > g.inject(_P1, _P2).sum() > {code} > where _P1 and _P2 are bound to values of type 'gx:Duration' (Graphson). > This will fail with the following error message: > {code:java} > [WARN] AbstractEvalOpProcessor - Exception processing a script on request > [RequestMessage{, requestId=c3e3b3c1-a0dd-4029-b0b6-f7650f6866b3, op='eval', > processor='', args={gremlin=g.inject(_P1, _P2).sum(), bindings={_P1=PT1S, > _P2=PT2S}}}]. > java.lang.ClassCastException: java.time.Duration cannot be cast to > java.lang.Number > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:52) > at > org.apache.tinkerpop.gremlin.process.traversal.step.map.SumGlobalStep.projectTraverser(SumGlobalStep.java:37) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:84) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) > at > org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) > at > org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) > at > org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:89) > at > org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$5(AbstractEvalOpProcessor.java:252) > at > org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:274) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > {code} > This is obviously due to the fact that the Sum-steps expects its arguments to > be of type Number, which Duration obviously is not. Since summation of > Durations is easily available through [this > method|[https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#plus-java.time.Duration-]] > it's worth consideration. The feature would save us an ugly roundtrip by > saving longs since in some of our queries, we use sum(). > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1942) Binary serialization format
[ https://issues.apache.org/jira/browse/TINKERPOP-1942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16445613#comment-16445613 ] stephen mallette commented on TINKERPOP-1942: - Note that I'd made a few notes on IO for TinkerPop 4.x: https://github.com/apache/tinkerpop/blob/master/docs/src/dev/future/index.asciidoc#serialization When we tried to get IO "right" for TinkerPop 3 we started by describing the use cases we wanted to cover. I think that helped a lot with getting the right choices made - until GLVs showed up and blew everything to pieces. That said, I think it was worth considering and would like to think that way again. If you look at the use cases for each of the IO existing formats (see the start of each format's section - http://tinkerpop.apache.org/docs/current/reference/#_gremlin_i_o) , where do you see this one fitting? Given how you wrote the first sentences of that document, it seems like you're thinking that this is more of a network format, no? > Binary serialization format > --- > > Key: TINKERPOP-1942 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1942 > Project: TinkerPop > Issue Type: Improvement > Components: io >Reporter: Jorge Bay >Priority: Major > > We should provide a binary serialization format designed to reduce > serialization overhead and minimizing the size of the payload that is > transmitted over the wire. > It could be implemented in a very similar way as Kryo support but with > interoperability in mind and ultimately we could fade Gryo out, as now with > the GLVs it doesn't have a role to play. > The main benefit would be the performance improvement, making serialization > and deserialization processing time negligible on both the server and the > client. > Background: > https://lists.apache.org/thread.html/13e70235591853801bab16ed457ee4f56f3dfe2d1c5817c34a036408@%3Cdev.tinkerpop.apache.org%3E -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1944) JavaScript GLV: DriverRemoteConnection is not exported in the root module
[ https://issues.apache.org/jira/browse/TINKERPOP-1944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1944: Issue Type: Improvement (was: Bug) I reclassified this as an enhancement as there is a workaround - it just requires an import > JavaScript GLV: DriverRemoteConnection is not exported in the root module > - > > Key: TINKERPOP-1944 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1944 > Project: TinkerPop > Issue Type: Improvement > Components: javascript >Affects Versions: 3.2.8, 3.3.2 >Reporter: Jorge Bay >Priority: Major > Fix For: 3.2.9, 3.3.3 > > > {{DriverRemoteConnection}} should be exported inside the driver module. > Users can still access the {{DriverRemoteConnection}} class using the path: > {code:javascript} > const DriverRemoteConnection = > require('./node_modules/gremlin/lib/driver/driver-remote-connection.js'); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (TINKERPOP-1804) Has step doesn't consider strategy vertexProperty filters
[ https://issues.apache.org/jira/browse/TINKERPOP-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16450253#comment-16450253 ] stephen mallette commented on TINKERPOP-1804: - I wonder if there's a reasonably way to reliably detect and re-write {{has('location', 'seattle')}} as {{hasLabel('location').hasValue('seattle'))}}... seems like that's a really narrow case where this would solve this particular problem, but i wonder if other traversals that had more complex {{has()}}/filter would not work so easily or would need some special additional handling. I might be overlooking something simple to this, but if not, i wonder if the added code complexity is worth the expansion of the feature. > Has step doesn't consider strategy vertexProperty filters > - > > Key: TINKERPOP-1804 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1804 > Project: TinkerPop > Issue Type: Bug > Components: process >Affects Versions: 3.2.3 >Reporter: Simone Cattani >Assignee: stephen mallette >Priority: Major > > Has step, when used in a traversal defined with strategies, doesn't consider > filters applied on properties by the strategies > Let's consider the crew example adding an old location for Marko, in Seattle, > the current Matthias' location. > {code} > graph = TinkerFactory.createTheCrew() > g = graph.traversal() > g.V().has('name', 'marko').property('location', 'seattle', 'startTime', 1994, > 'endTime', 1997) > {code} > Defining a strategy that considers just current location I can correctly > obtain the list of current locations > {code} > g.withStrategies(SubgraphStrategy.build().vertexProperties(or(hasLabel(neq('location')),hasNot('endTime'))).create()).V().hasLabel("person").valueMap() > ==>[name:[marko],location:[santa fe]] > ==>[name:[stephen],location:[purcellville]] > ==>[name:[matthias],location:[seattle]] > ==>[name:[daniel],location:[aachen]] > {code} > But requiring people (currently) living in Seattle, I obtain Marko, too > {code} > g.withStrategies(SubgraphStrategy.build().vertexProperties(or(hasLabel(neq('location')),hasNot('endTime'))).create()).V().hasLabel("person").has('location', > 'seattle').valueMap() > ==>[name:[marko],location:[santa fe]] > ==>[name:[matthias],location:[seattle]] > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1953) Bump to Groovy 2.4.15
[ https://issues.apache.org/jira/browse/TINKERPOP-1953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1953. --- Resolution: Done > Bump to Groovy 2.4.15 > - > > Key: TINKERPOP-1953 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1953 > Project: TinkerPop > Issue Type: Improvement > Components: groovy >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Critical > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > Bump to Groovy 2.4.15 to get a critical fix to this problem: > {code} > gremlin> org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ > it.get() }") > (class: org/apache/tinkerpop/gremlin/util/function/Lambda$function, method: > callStatic signature: > (Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;) Illegal type in > constant pool > Type ':help' or ':h' for help. > Display stack trace? [yN]n > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1947) Path history isn't preserved for keys in mutations
[ https://issues.apache.org/jira/browse/TINKERPOP-1947?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1947. --- Resolution: Fixed > Path history isn't preserved for keys in mutations > -- > > Key: TINKERPOP-1947 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1947 > Project: TinkerPop > Issue Type: Bug > Components: process >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > {code} > gremlin> > g.withSideEffect('k','name').addV('person').property(select('k'),'stephen') > The provided traverser does not map to a value: false->[SelectOneStep(k)] > Type ':help' or ':h' for help. > Display stack trace? [yN][An > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1950) Traversal construction performance enhancements
[ https://issues.apache.org/jira/browse/TINKERPOP-1950?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1950. --- Resolution: Done > Traversal construction performance enhancements > --- > > Key: TINKERPOP-1950 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1950 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.8 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > The process of constructing a {{Traversal}} could be made more efficient. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1946) Remove the deprecated Credentials DSL infrastructure
[ https://issues.apache.org/jira/browse/TINKERPOP-1946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1946. --- Resolution: Done > Remove the deprecated Credentials DSL infrastructure > > > Key: TINKERPOP-1946 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1946 > Project: TinkerPop > Issue Type: Improvement > Components: groovy >Affects Versions: 3.3.2 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Major > Labels: breaking > Fix For: 3.4.0 > > > TINKERPOP-1903 deprecated the old-style of DSL development for the Credential > system. It can be removed now. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1941) Remove deprecated Structure API exception methods
[ https://issues.apache.org/jira/browse/TINKERPOP-1941?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1941. --- Resolution: Done > Remove deprecated Structure API exception methods > - > > Key: TINKERPOP-1941 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1941 > Project: TinkerPop > Issue Type: Improvement > Components: structure >Affects Versions: 3.3.2 >Reporter: stephen mallette >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > > These exception were related to "element not found" situations. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (TINKERPOP-1953) Bump to Groovy 2.4.15
stephen mallette created TINKERPOP-1953: --- Summary: Bump to Groovy 2.4.15 Key: TINKERPOP-1953 URL: https://issues.apache.org/jira/browse/TINKERPOP-1953 Project: TinkerPop Issue Type: Improvement Components: groovy Affects Versions: 3.2.8 Reporter: stephen mallette Assignee: stephen mallette Fix For: 3.4.0, 3.2.9, 3.3.3 Bump to Groovy 2.4.15 to get a critical fix to this problem: {code} gremlin> org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }") (class: org/apache/tinkerpop/gremlin/util/function/Lambda$function, method: callStatic signature: (Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;) Illegal type in constant pool Type ':help' or ':h' for help. Display stack trace? [yN]n {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1935) GraphML Export Fails with List Cardinality
[ https://issues.apache.org/jira/browse/TINKERPOP-1935?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1935. --- Resolution: Won't Do > GraphML Export Fails with List Cardinality > -- > > Key: TINKERPOP-1935 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1935 > Project: TinkerPop > Issue Type: Bug > Components: io >Affects Versions: 3.3.2 >Reporter: James Baker >Priority: Major > > Exporting to GraphML throws an error if there are nodes with a List > Cardinality and multiple values set for a property. This works fine when > exporting to GraphSON. > The exception thrown is: > {{java.lang.IllegalStateException: Multiple properties exist for the provided > key, use Vertex.properties(name)}}{{at > org.apache.tinkerpop.gremlin.structure.Vertex$Exceptions.multiplePropertiesExistForProvidedKey(Vertex.java:179)}} > {{ at > org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerVertex.property(TinkerVertex.java:75)}} > {{ at > org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLWriter.writeVertices(GraphMLWriter.java:315)}} > {{ at > org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLWriter.writeGraph(GraphMLWriter.java:193)}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (TINKERPOP-1595) Go through TraversalVertexProgram with a profile and optimize.
[ https://issues.apache.org/jira/browse/TINKERPOP-1595?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1595: --- Assignee: stephen mallette Fix Version/s: 3.3.3 3.2.9 3.4.0 This one bears some connection to TINKERPOP-1950 in terms of performance gain I think. I'll just do some light review of the code given my existing profiling work in this area to see if there's anything else we can improve. > Go through TraversalVertexProgram with a profile and optimize. > -- > > Key: TINKERPOP-1595 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1595 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.3 >Reporter: Marko A. Rodriguez >Assignee: stephen mallette >Priority: Major > Fix For: 3.4.0, 3.2.9, 3.3.3 > > > Work with [~twilmes] on profiling {{TraversalVertexProgram}}. When I was > doing the {{DedupGlobalStep}} work with [~dkuppitz], I noticed various > nick-nack optimizations. My profiling skills are poor, so if [~twilmes] could > identify long running sections of the code, that would be huge. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-520) Create a history strategy to ship with TP3
[ https://issues.apache.org/jira/browse/TINKERPOP-520?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-520. -- Resolution: Won't Do Closed given comments in TINKERPOP-519 > Create a history strategy to ship with TP3 > -- > > Key: TINKERPOP-520 > URL: https://issues.apache.org/jira/browse/TINKERPOP-520 > Project: TinkerPop > Issue Type: Improvement > Components: structure >Affects Versions: 3.0.2-incubating >Reporter: Bryn Cooke >Priority: Major > > The requirement for a history strategy seems to come up over and over again. > Let's provide something that people can either use or base their code on. > I have an implementation that can be used as a starting point. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1939) running spark-gremlin in gremlin console
[ https://issues.apache.org/jira/browse/TINKERPOP-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1939. --- Resolution: Cannot Reproduce Closed pending new information. > running spark-gremlin in gremlin console > > > Key: TINKERPOP-1939 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1939 > Project: TinkerPop > Issue Type: Improvement > Components: plugin >Affects Versions: 3.3.2 >Reporter: Prashanth Madi >Priority: Minor > > After installing spark-gremlin, if we try to start gremlin console. it would > give below error.. > Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. > Module [groovy-swing is loaded in version 2.4.14 and you are trying to load > version 2.4.11 > > I can workaround it by deleting files manually but there should an option to > ignore such error or use latest version in future releases. Also, if possible > update spark-gremlin dependencies -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1579) Resolve naming collisions for static imports in the Gremlin language
[ https://issues.apache.org/jira/browse/TINKERPOP-1579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1579. --- Resolution: Won't Do After a fair bit of thought, I don't think there's much we can do here. The names are the names at this point and in many of these cases there isn't a way to really make them unique in a way where they remain logical. The workaround is to simply use the class/enum name to differentiate. > Resolve naming collisions for static imports in the Gremlin language > > > Key: TINKERPOP-1579 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1579 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.3 >Reporter: stephen mallette >Priority: Major > > This may not be a breaking change - it can likely be done with deprecation > along the 3.2.x line. The problem is that static imports collide in the > {{GremlinScriptEngine}} and therefore there are not only situations where > certain imports will be "hidden" but it can cause the system behave in > non-deterministic fashion depending on the {{ScriptEngine}}. For example, > groovy's compiler seems to only be able to detect the difference between > {{Column.values}} and {{__.values()}} if wildcards are used. If they are > imported directly then one of the other will fail. > Here's a list of the troublemaker names that collide across different > methods/enums: or,and,id,values,key,local,value,sum,min,max. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1938) Can we install plugin without firing gremlin console ?
[ https://issues.apache.org/jira/browse/TINKERPOP-1938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1938. --- Resolution: Invalid Fix Version/s: (was: 3.4.0) In the future, please use the Gremlin Users mailing list for questions related to usage: https://groups.google.com/forum/#!forum/gremlin-users that said, i'll try to answer your question as best i can here but please follow up on the mailing list if something isn't clear. I'm not sure what problem you are trying to solve exactly, but since you only have to type {{:install}} once and {{:plugin activate}} once to get the plugin into place, i don't see why you'd have to automate anything, but if you really need to for some reason you can of course script any command to the console with the {{-e}} or {{-i}} options to {{gremlin.sh}}: http://tinkerpop.apache.org/docs/current/reference/#execution-mode http://tinkerpop.apache.org/docs/current/reference/#interactive-mode If for some reason that doesn't help you, you can install plugins manually as the {{:install}} just automates the process of downloading the plugin jar file (and related dependencies) and putting them in gremlin console's path ({{/ext}} directory). When you later activate the plugin with {{:plugin use}} all that does is edit the {{/ext/plugins.txt}} file to include the name of the plugin and then executes the load of the plugin (if possible - a restart of the console will also force that load). You can see how that all works by just playing with the commands a little bit and looking at how the {{/ext}} directory changes after each command. Hope that helps. > Can we install plugin without firing gremlin console ? > -- > > Key: TINKERPOP-1938 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1938 > Project: TinkerPop > Issue Type: Improvement > Components: console >Affects Versions: 3.3.2 >Reporter: Prashanth Madi >Priority: Minor > > Can we install plugin without firing gremlin console ? > In other words.. i would like to automate plugin installation instead of > manually typing :install and things like that.. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (TINKERPOP-1938) Can we install plugin without firing gremlin console ?
[ https://issues.apache.org/jira/browse/TINKERPOP-1938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1938: Issue Type: Improvement (was: Task) > Can we install plugin without firing gremlin console ? > -- > > Key: TINKERPOP-1938 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1938 > Project: TinkerPop > Issue Type: Improvement > Components: console >Affects Versions: 3.3.2 >Reporter: Prashanth Madi >Priority: Minor > > Can we install plugin without firing gremlin console ? > In other words.. i would like to automate plugin installation instead of > manually typing :install and things like that.. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1143) Remove deprecated TraversalSource.Builder and TraversalEngine.
[ https://issues.apache.org/jira/browse/TINKERPOP-1143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1143. --- Resolution: Done > Remove deprecated TraversalSource.Builder and TraversalEngine. > -- > > Key: TINKERPOP-1143 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1143 > Project: TinkerPop > Issue Type: Improvement > Components: process >Affects Versions: 3.2.0-incubating >Reporter: Marko A. Rodriguez >Assignee: stephen mallette >Priority: Minor > Labels: breaking > Fix For: 3.4.0 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1233) Gremlin-Benchmark wish list.
[ https://issues.apache.org/jira/browse/TINKERPOP-1233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1233. --- Resolution: Won't Do I'm going to close this. It doesn't feel actionable to me. If we want to implement something here we should create a specific issue to do that particular thing. > Gremlin-Benchmark wish list. > > > Key: TINKERPOP-1233 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1233 > Project: TinkerPop > Issue Type: Improvement > Components: benchmark >Affects Versions: 3.2.0-incubating >Reporter: Marko A. Rodriguez >Priority: Major > > [~twilmes] has developed {{gremlin-benchmark}} which is slated for 3.2.0 > (TINKERPOP-1016). This is really good as now we can ensure the Gremlin > traversal machine only speeds up with each release. Here is a collection of > things I would like to be able to do with {{gremlin-benchmark}}. > > *Benchmarks in the Strategy Tests* > {code} > // ensure that traversalA is at least 1.5 times faster than traversalB > assertTrue(Benchmark.compare(traversalA,traversalB) > 1.50d) > {code} > With this, I can have an {{OptimizationStrategy}} applied to {{traversalA}} > and not to {{traversalB}} and prove via "mvn clean install" that the strategy > is in fact "worth it." I bet there are other good static methods we could > create. Hell, why not just have a {{BenchmarkAsserts}} that we can statically > import like JUnit {{Asserts}}. Then its just: > {code} > assertFaster(traversalA,traversalB,1.50d) > assertSmaller(traversalA,traversalB) // memory usage or object creation? > assertTime(traversal, 1000, TimeUnits.MILLISECONDS) // has to complete in 1 > second? > ... ? > {code} > Its a little scary as not all computers are the same, but it would be nice to > know that we have tests for space and time costs. > > *Benchmarks saved locally over the course of a release* > This is tricky, but it would be cool if local folders (not to GitHub) were > created like this: > {code} > tinkerpop3/gremlin-benchmark/benchmarks/g_V_out_out_12:23:66UT23.txt > {code} > Then a test case could ensure that all newer runs of that benchmark are > faster than older ones. If its, lets say, 10%+ slower, {{Exception}} and test > fails. ?? > What else can we do? Can we know whether a certain area of code is faster? > For instance, strategy application or requirements aggregation? If we can > introspect like that, that would be stellar. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1916) Importing NQuad RDF with Gremlin latest version
[ https://issues.apache.org/jira/browse/TINKERPOP-1916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1916. --- Resolution: Invalid We don't have a specific import system for nquads. You would typically "just write gremlin" to do data imports of any sort - by that I just mean that you would simply use Gremlin's mutation steps like: http://tinkerpop.apache.org/docs/current/reference/#addvertex-step http://tinkerpop.apache.org/docs/current/reference/#addedge-step to create vertices/edges as needed for each nquad that you have. The other option would be to use some form of bulk parallel insertion via {{ScriptInputFormat}} and hadoop-gremlin: http://tinkerpop.apache.org/docs/current/reference/#script-io-format We no longer have any connectors for Sail or anything like that. If you have further questions regarding usage questions please post them to the gremlin-users mailing list: https://groups.google.com/forum/#!forum/gremlin-users Thanks > Importing NQuad RDF with Gremlin latest version > --- > > Key: TINKERPOP-1916 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1916 > Project: TinkerPop > Issue Type: Improvement > Components: documentation >Reporter: Adam P >Priority: Major > > I have a process that produces NQuad RDF with anonymous nodes and I want to > import this into gremlin. I'm using scala and I dont see anything in the > gremlin-scala docs about it. > It would be really nice to have this because I could get import processes > built for Janus, Orientdb, and Neptune in one fell swoop via means of gremlin. > I was going to use Sail but its apparently not supported in TinkerPop3? What > replaced it? -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1187) Create a GraphComputer Tutorial
[ https://issues.apache.org/jira/browse/TINKERPOP-1187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1187. --- Resolution: Won't Do Assignee: (was: Marko A. Rodriguez) Closing all the tutorial ideas - if we want to come back to these at some point then we can re-open them. > Create a GraphComputer Tutorial > --- > > Key: TINKERPOP-1187 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1187 > Project: TinkerPop > Issue Type: Improvement > Components: documentation >Affects Versions: 3.1.1-incubating >Reporter: Marko A. Rodriguez >Priority: Major > > We should create a GraphComputer tutorial that discusses: > 1. GraphComputer, Memory, and VertexPrograms. > 2. Explains how Traversals are compiled to TraversalVertexPrograms. > 3. The mechanics of a TraversalVertexProgram. > 4. How to write your own VertexProgram. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (TINKERPOP-1007) Gremlin at the Movies Tutorial (SQL-Style in Gremlin)
[ https://issues.apache.org/jira/browse/TINKERPOP-1007?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1007. --- Resolution: Won't Do Assignee: (was: Jeremy Hanna) Closing all the tutorial ideas - if we want to come back to these at some point then we can re-open them. > Gremlin at the Movies Tutorial (SQL-Style in Gremlin) > - > > Key: TINKERPOP-1007 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1007 > Project: TinkerPop > Issue Type: Improvement > Components: documentation >Affects Versions: 3.1.0-incubating >Reporter: Marko A. Rodriguez >Priority: Major > > We need more tutorials. [~spmallette]'s "Getting Started" tutorial is great, > but (as acknowledged by Russell Jurney) we now need to meet the needs of > intermediate users as well. > I think we should do another "30 Minute" tutorial called "Gremlin at the > Movies" and use the MovieLens dataset. > http://grouplens.org/datasets/movielens/ (seems we can legally do this -- > http://files.grouplens.org/datasets/movielens/ml-1m-README.txt). > In this tutorial we provide a {{gryo}} file and the user will learn: > * Reducing barriers like {{count}}, {{max}}, {{sum}}, etc. > * {{select}} and its use with {{by}}-projections. > * {{match}} and its use with {{where}}, {{select}}, etc. > I think we present the queries in a very "SQL fashion" so people see that > Gremlin can be written using the popular/known SQL constructs of select, > where, group, by, etc. > Thus, "graph data" but "table feel." > Get information from: > http://www.slideshare.net/slidarko/the-gremlin-traversal-language?related=1 -- This message was sent by Atlassian JIRA (v7.6.3#76005)