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 2018/05/09 13:18:00 UTC
[jira] [Assigned] (TINKERPOP-1962) GroovyTranslator doesn't handle
empty maps
[ https://issues.apache.org/jira/browse/TINKERPOP-1962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stephen mallette reassigned TINKERPOP-1962:
-------------------------------------------
Assignee: stephen mallette
> GroovyTranslator doesn't handle empty maps
> ------------------------------------------
>
> Key: TINKERPOP-1962
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1962
> Project: TinkerPop
> Issue Type: Bug
> Components: server
> Affects Versions: 3.3.2
> Reporter: Dimitry Solovyov
> Assignee: stephen mallette
> Priority: Minor
>
> Bytecode queries that contain an empty map and lambdas fail because GroovyTranslator doesn't account for empty maps when [removing the last trailing comma|https://github.com/apache/tinkerpop/blob/3.3.2/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GroovyTranslator.java#L134].
> To reproduce:
> {code:java}
> gremlin> identity = new OneArgLambda('it.get()', 'gremlin-groovy')
> ==>lambda[it.get()]
> gremlin> bytecode = __.inject([:]).map(identity).asAdmin().getBytecode()
> ==>[[], [inject({}), map(lambda[it.get()])]]
> gremlin> client.submit(bytecode).all().get()
> org.apache.tinkerpop.gremlin.driver.exception.ResponseException: org.codehaus.groovy.control.MultipleCompilationErrorsException:
> Script9.groovy: 1: expecting ')', found ']' @ line 1, column 31.
> gremlinscriptengine__g.inject(]).map({it.get()})
> ^
> 1 error
> {code}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)