You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Stephen Mallette (Jira)" <ji...@apache.org> on 2021/10/28 19:41:00 UTC
[jira] [Created] (TINKERPOP-2634) Improve the ability to debug
Gremlin traversals
Stephen Mallette created TINKERPOP-2634:
-------------------------------------------
Summary: Improve the ability to debug Gremlin traversals
Key: TINKERPOP-2634
URL: https://issues.apache.org/jira/browse/TINKERPOP-2634
Project: TinkerPop
Issue Type: Improvement
Components: process
Affects Versions: 3.5.1
Reporter: Stephen Mallette
Introduce a new {{DebugStrategy}} which would essentially place the traversal in development mode. It would be added in the Gremlin Console when defining "g" or in a developer’s application code during programming. This approach works nicely for application development because it could be added in a way that doesn’t interfere with the execution of the code allowing tests to run without modification. For example, there would be no need to tack a {{profile()}} to the end of a traversal after discovering a problem or a need to take the traversal to a different tool to try to debug it.
{code}
g.withStrategy(DebugStrategy)
g.withStrategy(new DebugStrategy(verifyEdgeLabelSpecification=true, includeProfile=false))
g.withDebug() - first class??
{code}
If your tests all pass in development, the developer would be assured that running the same code in production without {{DebugStrategy}} would be safe. {{DebugStrategy}} could perhaps always turn on {{profile()}} but still return results and preserve the profiling output to be retrieved from the traversal somehow. Some more thought needs to be applied here.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)