Lyndon
ATApache TinkerPop
•Created by Lyndon on 10/16/2024 in #questions
CollectingBarrierStep bug
Anyone ever notice this bug in the CollectingBarrierStep?
Offending line https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/CollectingBarrierStep.java#L81
The problem here is that if you had an input of X + Y elements where X is your collecting barrier size and Y is some number greater than 0, if the first X elements in the barrier have no results output in the barrier and the latter Y elements in the barrier do have some result, the barrier will only be called on the first X elements and will not execute a second time.
6 replies
ATApache TinkerPop
•Created by Lyndon on 6/25/2024 in #questions
C# Profiling Duration
Does anyone have an example of how to get the millisecond/microsecond execution time of a query in C#? I can't find any examples of this online.
9 replies
ATApache TinkerPop
•Created by Lyndon on 6/14/2024 in #questions
Anyone had issues with gremlinpython driver async_timeout?
This seems to be an undocumented and unrequired (but actually required) library, every time i go to use the python driver in a cloud computer that is fresh, I have to install gremlinpython then async_timeout. This makes sense because it's not a default python library, but seems to be for some reason on the github machiens tinkerpop uses to test.
I am wondering if anyone else has noticed this and if we should perhaps put it in the https://github.com/apache/tinkerpop/blob/master/gremlin-python/src/main/python/setup.py or something.
4 replies
ATApache TinkerPop
•Created by Lyndon on 5/29/2024 in #questions
Potential bug in evaluationTimeout when using auth?
10 replies
ATApache TinkerPop
•Created by Lyndon on 5/7/2024 in #questions
Traversal Inspection for properties used
Is there any way to inspect a traversal to figure out what properties are used throughout it?
I am looking at the traversal API / steps and can't see anything that looks like it would fulfill the purpose.
Something that would tell what properties are used, which are returned.
This would be useful if you had a case where you had several hundred properties on a vertex but maybe only check the label and return the id, meaning you don't need to know all the properties to execute the traversal, or maybe you only check one property or just return one.
20 replies
ATApache TinkerPop
•Created by Lyndon on 1/19/2024 in #questions
Disabling strategies via string in remote driver
Is there a way to disable a strategy in a providers implementation without a reference to the class?
For example, let's say StrategyA is in the providers implementation and I am in Python without access to this.
Is there no way to do g.withoutStrategies("com.provider.strategies.StrategyA").V().<etc>()?
I see string inputs mentioned in the changelog but it doesn't seem to work?
7 replies
ATApache TinkerPop
•Created by Lyndon on 12/11/2023 in #questions
Does graph notebook still work after changes to serializers?
I am trying to use the graph-notebook project, my project previously worked. I updated Aerospike graph to the latest version of tinkerpop and with it the serializers were updated.
Trying to run any
%%gremlin
now results in an error of
which is a mismatch on the serializer. I can't seem to find a way to change the serializer in this magic cell. Is there a workaround for this?19 replies
ATApache TinkerPop
•Created by Lyndon on 10/30/2023 in #questions
Help with visualizing in the graph-notebook
I am trying to visualize a graph in the graph-notebook but no matter what I do I cannot get it to be correct.
So I have a very simple graph that has like 6 vertices, connected with maybe 8 edges, and I want to just visualize that graph with the labels of the vertices and edges on the visualization and the properties available if you select the details.
I have tried may variations of g.V().out().path / g.V().outE().inV().path() with elementMap() before path, using path().by(elementMap()), as well as trying from g.E() and other things. Nothing seems to work, randomly edges are missing labels, or an exta edge is added to each vertex that just goes to itself.
Anyone know how to do this?
5 replies
ATApache TinkerPop
•Created by Lyndon on 9/13/2023 in #questions
RepeatStep does not appear to respect barriers
I was digging into some traversal performance and had something similar to the following:
For the graph implementation in question,
out()
is implemented on top of a CollectingBarrierStep
.
I noticed that that fact is not respected by the repeat and it only gets 1 item at a time, i.e no aggregation.
I removed my strategy and changed the query to:
and then put breakpoints in the FlatMapStep
and it seemed that the barrier was still not respected and items came in 1 at a time.
Fully verifying this is an issue is difficult and I'd be surprised that this was not noticed before. Has anyone noticed anything similar or have reason to believe this is not the case?12 replies
ATApache TinkerPop
•Created by Lyndon on 8/23/2023 in #questions
Casting issue with Gremlin Java
I wrote the following query and I can't get it to compile, tried a ton of casting but it just isn't happy...
The problem is because of the fold it loses the type and then the type going into the repeat will not allow me to execute an in() step. I tried casting the unfold() and the in() to GraphTraversal<Vertex, Vertex> and variations of that with 1 vertex switched for Object. I cannot get this to compile. Anyone have any ideas on how to cast this properly?
9 replies
ATApache TinkerPop
•Created by Lyndon on 8/10/2023 in #questions
Gremlin Query for amount of time and return all results?
Is there a way to make gremlin keep running until time elapses then return the results? I have a query that I am working on that looks for paths of a size, i want this to run for a length of time and return all the paths it can find in that time. Right now I have it set to stop at paths of size N, which I'd like to be instead run for time X.
7 replies
ATApache TinkerPop
•Created by Lyndon on 7/4/2023 in #questions
MetricRegistry Documentation
Is there documentation anywhere on the metrics provided by the
MetricRegistry
and what their meaning is?5 replies
ATApache TinkerPop
•Created by Lyndon on 6/19/2023 in #questions
Expected use of `next()` in Java driver
I was doing some testing recently and noticed that on very large datasets, invoking
next()
seems to pull everything and not just the first element like I thought it would.
I have noticed this used a lot as a way of effectively doing <traversal>.limit(1)
.
Is it expected if you are using next()
that you then close()
the traversal that you called next()
on?
I tried looking in the docs but since it implements iterator I couldn't find the docs for actually using next()
5 replies
ATApache TinkerPop
•Created by Lyndon on 6/9/2023 in #questions
3.6.2 gremlin-server possible memory leak
Has there been any memory leak reports in versions >=3.6.2?
I just tracked down a memory leak that manifests itself as slow memory growth when queries execute and found that the change that caused it is when we changed from 3.6.1 to 3.6.2.
I switched back to 3.6.1 and the leak is gone. I also tried running the graph outside of gremlin-server and the leak is gone.
Before I dive deep into trying to figure out exactly where this is coming from, I was wondering if this has been reported by anyone else?
51 replies
ATApache TinkerPop
•Created by Lyndon on 5/19/2023 in #questions
Using Spark inside Gremlin-Server
I am trying to invoke spark in Java inside a
call
step inside my graph implementation which is loaded in Gremlin-Server but I am running into a difficult error.
Outside of gremlin-server everything works properly.
I was wondering if anyone has experienced this or if there is anything that gremlin-server does with the class loader that might affect this?
The stack trace is attached13 replies
ATApache TinkerPop
•Created by Lyndon on 4/19/2023 in #questions
Application of traversal strategies taking >6x longer than traversal execution
Has any providers dealt with traversal strategies taking a really long time in large nested traversals (nested with coalesce branches)? Just the default tinkerpop strategies are taking >120 ms to apply while the query executes in ~20 ms.
I looked through and found it is the recurse applyTraversal function which I am thinking of rewriting with some other code but I don't know if it will be much faster. I figured other providers must have dealt with this as well.
10 replies
ATApache TinkerPop
•Created by Lyndon on 3/3/2023 in #questions
How to load url data into Neptune?
I am trying to load a small dataset into Neptune and it seems to always error.
I tried
g.io("<file path>").
with(IO.reader, IO.graphson).
read().iterate()
And it says
"detailedMessage": "Failed to interpret Gremlin query: Query parsing failed at line 3, character position at 9, error message : token recognition error at: 'IO'",
So I tried without the IO
"detailedMessage": "Failed to interpret Gremlin query: IO request has to be a URL",
I tried to url manually and it downloads and works, so I know it is visible to Neptune, but I cannot get it to load.
8 replies