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

Liu Jianping commented on TINKERPOP-2296:
-----------------------------------------

# After deserialization of RequestMessage which includes scripts and bytecode, 
we get timeout argument in RequestMessage then start time ticker for timeout. I 
mean we could iterator OptionsStrategy instance for timeout argument before the 
bytecode translation. and it likes get 'scriptEvaluationTimeout' in 
RequestMessage args.
 # add OptionsStrategy in client bytecode `with`,  and iterator bytecode 
instance in server for timeout argument, It could be applied to all GLVs, and 
consistent with `gremlin-core`.

> Per query timeout not working from Python
> -----------------------------------------
>
>                 Key: TINKERPOP-2296
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2296
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: python, server
>    Affects Versions: 3.4.3
>         Environment: Gremlin Server 3.4.3 and GremlinPython latest
>            Reporter: Kelvin R. Lawrence
>            Priority: Major
>
> I had a discussion with [~spmallette] about some problems I have been running 
> into trying to get per query timeouts to work using the Python GLV client. As 
> best as I can tell the timeout setting just gets ignored. The query executes 
> to completion taking as many seconds as needed. Stephen asked for a Jira so 
> writing this up here.
> Using the air-routes data set this query can take a few seconds so should 
> definitely time out at 200ms. Using the Java client the same query works 
> although I had an exception when using the Binary serializer but it worked 
> when using GraphSON. I don't know yet if that is relevant to this issue.
>  
> {{paths = (g.V().with_('scriptEvaluationTimeout', 200).}}
> {{         has('airport', 'code', 'AUS').}}
> {{         repeat(__.out('route').simplePath()).}}
> {{         until(__.has('code', 'AGR')).}}
> {{         path().by('code').}}
> {{         limit(10).}}
> {{         toList())}}
>  
> {{As a sidenote it would be nice if the Python client had an equivalent of 
> the Java Tokens class so that constant variable names rather than strings 
> could be used for the 'scriptEvaluationTimeout' part.}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to