[
https://issues.apache.org/jira/browse/TINKERPOP-2245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16866842#comment-16866842
]
stephen mallette commented on TINKERPOP-2245:
---------------------------------------------
so scary, but, yes, this is an area of technical debt that exists.
unfortunately the {{GremlinExecutor}} did not quite hit the layer of
abstraction i was hoping to hit when it was first developed. we then developed
bytecode several years after the fact and sorta wedged it in there. there is a
fair bit of code/function duplication that could be eradicated across Gremlin
Server.
> [Refactor] Consolidate the executor for bytecode & string based client
> ----------------------------------------------------------------------
>
> Key: TINKERPOP-2245
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2245
> Project: TinkerPop
> Issue Type: Improvement
> Components: server
> Affects Versions: 3.4.2
> Reporter: Divij Vaidya
> Priority: Minor
>
> We have two code paths in the server which perform (more or less) the same
> functions. One is the executor for string based queries and other is the
> executor for bytecode. This code can be refactored together so that the logic
> to handle timeout, handle exception during execution, handle exception before
> execution and others can consolidated.
> [https://github.com/apache/tinkerpop/blob/master/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java#L246]
> and
> [https://github.com/apache/tinkerpop/blob/master/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java#L333]
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)