[ https://issues.apache.org/jira/browse/TINKERPOP-3040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17876184#comment-17876184 ]
Ken Hu commented on TINKERPOP-3040: ----------------------------------- It's been a while since I've taken a look at this part of the code myself so I can't quite remember the details. We depend on the local evaluation to tell us if the multiline script is fully-formed and complete so that it is ready to be sent to server. The way the parser is setup now in Groovy 4 may require that evaluation to happen twice per line. In the past, there were alternative parsers for Groovy but I didn't look to see if alternatives were available in Groovy 4. That is possibly one thing to check on. If you are looking for a way forward for this issue, the easiest thing to try would be to add a "catch(RuntimeException)". Of course, this wouldn't always work since it might actually be a real error. But, it might be enough to satisfy your use case. > Remote Console won't send queries that cause exceptions locally > --------------------------------------------------------------- > > Key: TINKERPOP-3040 > URL: https://issues.apache.org/jira/browse/TINKERPOP-3040 > Project: TinkerPop > Issue Type: Bug > Components: console > Affects Versions: 3.7.0 > Reporter: Ken Hu > Priority: Critical > > From: https://groups.google.com/g/gremlin-users/c/U2gIxmRcrI8/m/x12banhdAAAJ > It appears that if an exception occurs when the remote console is executing a > command locally then it won't send that query to the server. > > Example: > {code:java} > \,,,/ > (o o) > -----oOOo-(3)-oOOo----- > plugin activated: tinkerpop.server > plugin activated: tinkerpop.utilities > plugin activated: tinkerpop.tinkergraph > plugin activated: janusgraph.imports > gremlin> :remote connect tinkerpop.server conf/remote.yaml > ==>Configured localhost/127.0.0.1:45940 > gremlin> :remote console > ==>All scripts will now be sent to Gremlin Server - > [localhost/127.0.0.1:45940] - type ':remote console' to return to local mode > gremlin> JanusGraphFactory.getGraphNames() > Gremlin Server must be configured to use the JanusGraphManager. > Type ':help' or ':h' for help. > Display stack trace? [yN]y > java.lang.NullPointerException: Gremlin Server must be configured to use the > JanusGraphManager. > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:921) > at > org.janusgraph.core.JanusGraphFactory.getGraphNames(JanusGraphFactory.java:187) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at groovysh_evaluate.run(groovysh_evaluate:3) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.selectMethod(IndyInterface.java:355) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at > org.apache.groovy.groovysh.Interpreter.evaluate(Interpreter.groovy:82) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at > org.apache.tinkerpop.gremlin.console.GremlinGroovysh.execute(GremlinGroovysh.groovy:118) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at org.apache.groovy.groovysh.Shell.leftShift(Shell.groovy:121) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at org.apache.groovy.groovysh.ShellRunner.work(ShellRunner.groovy:93) > at > org.apache.groovy.groovysh.InteractiveShellRunner.work(InteractiveShellRunner.groovy:124) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at org.apache.groovy.groovysh.ShellRunner.run(ShellRunner.groovy:57) > at > org.apache.groovy.groovysh.InteractiveShellRunner.run(InteractiveShellRunner.groovy:96) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at > org.apache.tinkerpop.gremlin.console.Console.<init>(Console.groovy:175) > at > org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) > at org.apache.tinkerpop.gremlin.console.Console.main(Console.groovy:574) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)