2

Is there any way to obtain the Gremlin version used by a server? If none exists, does it make sense for Gremlin open source community to include a mechanism to programmatically expose that?

Some options: 1. g.version() 2. http://endpoint/?version

There are multiple reasons for this ask. 1. Gremlin client incompatibility between versions (surfaces as a serialization error of some sort, which can be misleading for many customers) 2. There are multiple vendors out there now, and it helps to have a standard way of advertising the gremlin version of the running server.

The-Big-K
  • 2,672
  • 16
  • 35

1 Answers1

2

Gremlin Server doesn't expose that information. I think it would be nice if there was a better layer of content negotiation built into the protocol that could detect the version of the server and react accordingly, but I imagine that would obviously be a non-trivial sort of change that would require a lot of discussion (followed by effort to implement).

stephen mallette
  • 45,298
  • 5
  • 67
  • 135
  • Thanks. This is definitely worth discussing in the dev list like you mentioned. Wiring version in the protocol is definitely an option, although, wiring it on the traversal would be more ideal in my opinion, as it keeps the REST interface pretty simple. You don't need to worry about the wire protocol or any sort of version negotiation. However, now that I think about it, version negotiation and supporting multiple versions using a single endpoint would a really really cool feature! Helps vendors host multiple TP versions on the same endpoint. – The-Big-K Aug 21 '18 at 20:53