[ 
https://issues.apache.org/jira/browse/TINKERPOP-2245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17318402#comment-17318402
 ] 

ASF GitHub Bot commented on TINKERPOP-2245:
-------------------------------------------

spmallette commented on pull request #1414:
URL: https://github.com/apache/tinkerpop/pull/1414#issuecomment-817045551


   I've done a lot of work here and have largely addressed all your comments 
(hopefully). A few big ticket things to pay attention to:
   
   1. Despite my earlier reply, I went ahead and implemented rate limiting from 
https://issues.apache.org/jira/browse/TINKERPOP-709
   2. I renamed almost everything and which helped me to realized that i could 
kill some code which ended up getting rid of some "tasks" and "executors" and 
simplified some things. Basic structure now is that the `UnifiedHandler` (still 
not sure i want to go with the functional naming you suggested) creates a 
`SessionTask` which is submitted to a `Session` to be executed. The `Session` 
consumes a thread from the `gremlinPool` to do its work and is either a 
`SingleTaskSession` (meaning it executes the `SessionTask` that called for its 
creation and then completes) or is a `MultiTaskSession` (meaning it executes 
the initial `SessionTask` that called for its creation and then holds the 
thread awaiting more `SessionTask` instances to be submitted to it).
   3. Lots more javadoc that i hope is more clear and a lot more inline 
comments.
   
   Well, done with this for the weekend unless i'm struck by some fresh bit of 
thinking. I kinda like where it is. I think you're initial review helped refine 
things.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> 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
>            Assignee: Stephen Mallette
>            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
(v8.3.4#803005)

Reply via email to