tinkerpop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Mallette <spmalle...@gmail.com>
Subject [DISCUSS] Future of Gryo
Date Fri, 21 Jun 2019 18:10:30 GMT
With GraphBinary coming around, I think the future of Gryo is dying at
least insofar as Gremlin Server is concerned. I'm currently making it so
that the Gremlin Console can work with GraphBinary so that we remove
dependency on Gryo for anything in that part of the TinkerPop stack. That
essentially makes it possible to deprecate Gryo for Gremlin Server in 3.4.3
and then set it up for removal from Gremlin Server for 3.5.0. That removal
turns out to be helpful because I sense breaking changes coming in 3.5.0
that will not translate well to Gryo compatibility between 3.4.x and 3.5.0
(which means Gryo 4.0 - rather not do that just for Gremlin Server's
purposes anyway).

If that much sounds sensible, then perhaps the next part might be too. More
radically speaking, I suppose it would be smart to consider completely
deprecating Gryo in 3.4.3 and removing it in 3.5.0 across the board and
really focusing on pushing GraphBinary. We'd get rid of a fat body of code,
slim down our use of shading, simplify our serialization story, reduce the
testing footprint, set up for TinkerPop having a smaller more concise type
set and probably other good things.

The downside is that OLAP stuff is massively dependent on Gryo, I think
largely because of Spark's dependency on Kryo. We'd have to see all the
OLAP stuff go to GraphBinary somehow - eeek!

Anyway, just thought I'd hang these thoughts out there for discussion in
case anyone had any opinions on the matter. If not, I will at least look to
go forward with the first part of this effort in getting Gryo deprecated in
3.4.3 so as not to compete with GraphBinary and look to remove
configurations/support in Gremlin Server for 3.5.0. Further thinking can go
into its full removal at a later time.

Thanks,

Stephen

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message