JanusGraph / JanusGraph/janusgraph
[ERROR] DefaultGremlinScriptEngineManager - Could not create GremlinScriptEngine for gremlin-groovy
- Dominant language
- Java
- Stars
- 5.8k
- Forks
- 1.2k
- Avg merge
- 13h 53m
- Merged PRs (30d)
- 6
Description
Please include configurations and logs if available.
For confirmed bugs, please report:
- Version: 0.6.1
- Storage Backend: scylla:4.2.1
- Mixed Index Backend: elasticsearch:6.6.0
- Link to discussed bug:
- Expected Behavior: Gremlin server should start
- Current Behavior: Gremlin server fails on startup, works with JanusGraph 0.5.x
- Steps to Reproduce:
```
version: '3.3'
services:
graph:
image: janusgraph/janusgraph:0.6.1
volumes:
- ./efs/neptune:/opt/janusgraph/data
- ./conf/tinkergraph-credentials.properties:/opt/janusgraph/conf/tinkergraph-credentials.properties
- ./conf/tinkergraph-empty.properties:/opt/janusgraph/conf/tinkergraph-empty.properties
- ./conf/log4j-server.properties:/opt/janusgraph/conf/log4j-server.properties
- ./conf/gremlin.sh:/opt/janusgraph/bin/gremlin-server.sh
environment:
JANUS_PROPS_TEMPLATE: cassandra-es
janusgraph.storage.backend: cql
janusgraph.storage.hostname: db
janusgraph.index.search.hostname: index
ports:
- "8182:8182"
- "8184:8184"
depends_on:
- db
- index
db:
image: scylladb/scylla:4.2.1
ports:
# REST API
- "10000:10000"
# CQL ports (native_transport_port)
- "9042:9042"
# Thrift (rpc_port)
- "9160:9160"
# Internode
- "7002:7000"
- "7001:7001"
# JMX
- "7199:7199"
# Prometheus monitoring
- "9180:9180"
- "9100:9100"
index:
image: docker.elastic.co/elasticsearch/elasticsearch:6.6.0
environment:
- discovery.type=single-node
- http.host=0.0.0.0
- transport.host=127.0.0.1
ports:
- "9200:9200"
- "9300:9300"
networks:
es-net:
driver: bridge
```
### Stack Trace (if you have one)
```
graph_1 | [ERROR] DefaultGremlinScriptEngineManager - Could not create GremlinScriptEngine for gremlin-groovy
graph_1 | java.lang.IllegalStateException: javax.script.ScriptException: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: graph for class: Script1
graph_1 | at org.apache.tinkerpop.gremlin.jsr223.DefaultGremlinScriptEngineManager.lambda$createGremlinScriptEngine$16(DefaultGremlinScriptEngineManager.java:464)
graph_1 | at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
graph_1 | at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
graph_1 | at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
graph_1 | at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:647)
graph_1 | at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:272)
graph_1 | at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
graph_1 | at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
graph_1 | at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
graph_1 | at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
graph_1 | at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
graph_1 | at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
graph_1 | at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485)
```
Contributor guide
Research direction
Start by reproducing the JanusGraph 0.6.1 Docker Compose setup and inspect the startup trace at DefaultGremlinScriptEngineManager.java:464. Review the mounted gremlin-server.sh and the listed configuration files to isolate why Gremlin server fails during engine creation. Done means the Gremlin server starts successfully with the documented storage and index services.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker-compose, elasticsearch, java
- Domain
- databases, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100