1

I'm using "com.michaelpollmeier" %% "gremlin-scala" % "3.2.0.1" together with "com.michaelpollmeier" % "orientdb-gremlin" % "3.2.0-incubating.1-SNAPSHOT" to store some domain objects as Vertices to an OrientDB (v2.1.20)

I understand it's pretty bleeding edge code but I'd like some pointers to understand why is the driver throwing this exception:

Caused by: com.orientechnologies.orient.core.exception.ODatabaseException: Error on deserialization of Serializable at com.orientechnologies.orient.core.serialization.serializer.record.binary.OSerializableWrapper.fromStream(OSerializableWrapper.java:47) at com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinaryV0.readSingleValue(ORecordSerializerBinaryV0.java:382) ... 13 more Caused by: java.lang.ClassNotFoundException: com.esc.domain.Address

Any hint would be very much appreciated as to what's going on :)

Best, Edoardo

Oleksandr Gubchenko
  • 1,369
  • 6
  • 17
Eddy
  • 1,662
  • 2
  • 21
  • 36

1 Answers1

1

Eventually found the cause (see github issue about it) in the Scala macro used in gremlin-scala to convert a case class to a Vertex prior to saving it. In short it doesn't recur into member case class instances and sends whatever is there.

Solution is to forego the macro and implement a custom gremlin.scala.Marshallable[YourCC]

Eddy
  • 1,662
  • 2
  • 21
  • 36