Open TheElan opened 5 years ago
@ElanHD could you show how your custom type looks like? It's pretty strange that hyperion was unable to serialize that type.
Currently DData uses Hyperion for all serialization purposes as temporary solution (and to keep things simple).
Ultimately it should be replaced by something like protobuf with customizable (like akka JVM does), but particular problem with that approach on .NET platform is that protobuf doesn't support generics, which .NET requires to exists at runtime (unlike the JVM, which erases them). There's a #3628 which tries to address the issue, but it's not trivial to solve.
@Horusiath sorry for taking so long to answer.
This class is part of protobuff generated class by protobuff:
Here is proto definition:
I am able to convert it to text or bytes, but I don't know how to plugin my custom serializer (if it is even possible).
@Aaronontheweb, any clues on how I can solve this or work around?
Info
Version: Akka.Cluster: 1.3.12, Akka.DistributedData: 1.3.12-beta Platform: Linux/Windows
Backstory
I am having a trouble making my distributed data replication work. I have described my domain in proto language and generated some grpc code. I use it to unify my model over different platforms (at least on boundaries) and I am also connecting to some external systems). I have an LWWMap with string key and my domain object as value which is currently taken from code protobuff generates for me.
Issue
When I connect to other node and system tries to replicate data I sent to ddreplicator I get an error:
I also tried to write custom protobuff serializer, but it didn't help, hyperion will still try to serialize my domain objects with it's serializer and will eventually fail.
Here is my configuration:
Additional questions