anchor.diff:  [INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
   [INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-lite with org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0
   [INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-stringd with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
  -[INFO] GremlinServer$1 - Gremlin Server configured with worker thread pool of 1, gremlin pool of 8 and boss thread pool of 1.
  +[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0
  +[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v2.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0
  +[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v3.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0
  +[INFO] AbstractChannelizer - Configured application/json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0
  +[INFO] GremlinServer$1 - Gremlin Server configured with worker thread pool of 1, gremlin pool of 4 and boss thread pool of 1.
   [INFO] GremlinServer$1 - Channel started at port 8182.
   ----
   
  
positive.code: [INFO] MetricManager - Configured Metrics Slf4jReporter configured with interval=180000ms and loggerName=org.apache.tinkerpop.gremlin.server.Settings$Slf4jReporterMetrics
  [INFO] GraphManager - Graph [graph] was successfully configured via [conf/tinkergraph-empty.properties].
  [INFO] ServerGremlinExecutor - Initialized Gremlin thread pool.  Threads in pool named with pattern gremlin-*
  [INFO] ScriptEngines - Loaded gremlin-groovy ScriptEngine
  [INFO] GremlinExecutor - Initialized gremlin-groovy ScriptEngine with scripts/generate-modern.groovy
  [INFO] ServerGremlinExecutor - Initialized GremlinExecutor and configured ScriptEngines.
  [INFO] ServerGremlinExecutor - A GraphTraversalSource is now bound to [g] with graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
  [INFO] OpLoader - Adding the standard OpProcessor.
  [INFO] OpLoader - Adding the control OpProcessor.
  [INFO] OpLoader - Adding the session OpProcessor.
  [INFO] OpLoader - Adding the traversal OpProcessor.
  [INFO] TraversalOpProcessor - Initialized cache for TraversalOpProcessor with size 1000 and expiration time of 600000 ms
  
negative.code: available threads and Gremlin Server would stop responding.
  
  Gremlin Server (more specifically the `GremlinGroovyScriptEngine`) provides methods to protect itself from these
  kinds of troublesome scripts.  A user can configure the script engine with a `GroovyCompilerGremlinPlugin`
  implementation. Consider the basic configuration from the Gremlin Server YAML file:
  
  [source,yaml]
  ----
  scriptEngines: {
    gremlin-groovy: {
      plugins: { org.apache.tinkerpop.gremlin.server.jsr223.GremlinServerGremlinPlugin: {},
                 org.apache.tinkerpop.gremlin.tinkergraph.jsr223.TinkerGraphGremlinPlugin: {},
                 org.apache.tinkerpop.gremlin.jsr223.ImportGremlinPlugin: {classImports: [java.lang.Math], methodImports: [java.lang.Math#*]},
                 org.apache.tinkerpop.gremlin.jsr223.ScriptFileGremlinPlugin: {files: [scripts/empty-sample.groovy]}}}}
  ----
  
  This configuration can be expaded to include a the `GroovyCompilerGremlinPlugin`:
  
  [source,yaml]
  ----
  scriptEngines: {
    gremlin-groovy: {
      plugins: { org.apache.tinkerpop.gremlin.server.jsr223.GremlinServerGremlinPlugin: {},
                 org.apache.tinkerpop.gremlin.tinkergraph.jsr223.TinkerGraphGremlinPlugin: {}
                 org.apache.tinkerpop.gremlin.jsr223.ImportGremlinPlugin: {classImports: [java.lang.Math], methodImports: [java.lang.Math#*]},
                 org.apache.tinkerpop.gremlin.jsr223.ScriptFileGremlinPlugin: {files: [scripts/empty-sample-secure.groovy]},
                 org.apache.tinkerpop.gremlin.groovy.jsr223.GroovyCompilerGremlinPlugin: {timedInterrupt: 10000}}}}
  ----
  
  This configuration sets up the script engine with to ensure that loops (like `while`) can only execute for `10000`
  milliseconds.  With this configuration in place, a remote execution as follows, now times out rather than consuming
  the thread continuously:
  
  