JanusGraph / JanusGraph/janusgraph

Serialization of TinkerGraph for subgraph() step should be supported by default

Open
#2,843 0 comments 0 reactions 0 assignees View on GitHub
area/core area/server kind/enhancement
Dominant language
Java
Stars
5.8k
Forks
1.2k
Avg merge
13h 53m
Merged PRs (30d)
6

Description

**Describe the feature:**
Serialization of a `TinkerGraph` should be supported by default, both by JanusGraph Server and also by the Gremlin Console that we ship. We can solve this by adding the TinkerPop IO registry in addition to our own IO registry for JanusGraph Server and in the config files included in the zip archive distribution.

Currently users get this exception if they try to use the `subgraph()` step without changing the configuration:
```java
org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Error during serialization: Class is not registered: org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph Note: To register this class use: kryo.register(org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph.class);
```

This issue was also reported on gremlin-users: https://groups.google.com/g/gremlin-users/c/DNcCDcYQ9fA

**Describe a specific use case for the feature:**
The [`subgraph()` step](https://tinkerpop.apache.org/docs/3.5.1/reference/#subgraph-step) can be used to get a part of the whole graph back that can then be further traversed or exported to a file.

Contributor guide

Open the contributing guide

Research direction

Locate the JanusGraph Server configuration and the config files included in the zip archive distribution, then inspect how their JanusGraph and TinkerPop IO registries are configured. Verify the Gremlin Console's shipped configuration as well. Done means TinkerGraph serialization for the subgraph() step works by default in JanusGraph Server and the shipped Gremlin Console without manual registration.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
database
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.