TINKERPOP-2005 Encapsulate test eval timeout overrides in a method This is to avoid directly exposing other settings whose changes may not be effective until the server is restarted.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4ff4b88a Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4ff4b88a Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4ff4b88a Branch: refs/heads/tp33 Commit: 4ff4b88a5b663f86917299691edc6f84a6bd1c67 Parents: b7a4495 Author: Dmitri Bourlatchkov <dmitri.bourlatch...@datastax.com> Authored: Mon Jul 30 15:57:14 2018 -0400 Committer: Dmitri Bourlatchkov <dmitri.bourlatch...@datastax.com> Committed: Mon Jul 30 15:57:14 2018 -0400 ---------------------------------------------------------------------- .../server/AbstractGremlinServerIntegrationTest.java | 13 ++++++++++++- .../gremlin/server/GremlinServerIntegrateTest.java | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4ff4b88a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/AbstractGremlinServerIntegrationTest.java ---------------------------------------------------------------------- diff --git a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/AbstractGremlinServerIntegrationTest.java b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/AbstractGremlinServerIntegrationTest.java index a8a8853..f11a045 100644 --- a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/AbstractGremlinServerIntegrationTest.java +++ b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/AbstractGremlinServerIntegrationTest.java @@ -39,7 +39,7 @@ import static org.junit.Assume.assumeThat; */ public abstract class AbstractGremlinServerIntegrationTest { protected GremlinServer server; - protected Settings overriddenSettings; + private Settings overriddenSettings; private final static String epollOption = "gremlin.server.epoll"; private static final boolean GREMLIN_SERVER_EPOLL = "true".equalsIgnoreCase(System.getProperty(epollOption)); private static final Logger logger = LoggerFactory.getLogger(AbstractGremlinServerIntegrationTest.class); @@ -51,6 +51,17 @@ public abstract class AbstractGremlinServerIntegrationTest { return settings; } + /** + * This method may be called after {@link #startServer()} to (re-)set the script evaluation timeout in + * the running server. + * @param timeoutInMillis new script evaluation timeout + */ + protected void overrideScriptEvaluationTimeout(final long timeoutInMillis) { + // Note: overriding settings in a running server is not guaranteed to work for all settings. + // It works for the evaluation timeout, though, because GremlinExecutor is re-created for each evaluation. + overriddenSettings.scriptEvaluationTimeout = timeoutInMillis; + } + public InputStream getSettingsInputStream() { return AbstractGremlinServerIntegrationTest.class.getResourceAsStream("gremlin-server-integration.yaml"); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4ff4b88a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java ---------------------------------------------------------------------- diff --git a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java index 9256458..0867fd3 100644 --- a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java +++ b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java @@ -394,7 +394,7 @@ public class GremlinServerIntegrateTest extends AbstractGremlinServerIntegration // Note: this test may have a false negative result, but a failure would indicate a real problem. for(int i = 0; i < 30; i++) { int timeout = 1 + i; - overriddenSettings.scriptEvaluationTimeout = timeout; + overrideScriptEvaluationTimeout(timeout); try { client.submit("x = 1 + 1").all().get().get(0).getInt();