WorldQL / mammoth

Scale a single world horizontally across multiple Minecraft servers.
https://www.worldql.com/posts/2021-08-worldql-scalable-minecraft/
MIT License
857 stars 47 forks source link

FlatBuffers: object serialization must not be nested. #44

Open Jaxkr opened 2 years ago

Jaxkr commented 2 years ago
[03:03:18 WARN]: Exception in thread "Thread-5" java.lang.AssertionError: FlatBuffers: object serialization must not be nested.
[03:03:18 INFO]: Done (6.876s)! For help, type "help"
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.google.flatbuffers.FlatBufferBuilder.notNested(FlatBufferBuilder.java:688)
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.google.flatbuffers.FlatBufferBuilder.startTable(FlatBufferBuilder.java:744)
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.worldql.client.Messages.Message.startMessage(Message.java:48)
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.worldql.client.serialization.Codec.encodeMessage(Codec.java:134)
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.worldql.client.serialization.Message.encode(Message.java:186)
[03:03:18 INFO]: Timings Reset
[03:03:18 WARN]:        at WorldQLClient-1.0-SNAPSHOT.jar//com.worldql.client.ZeroMQServer.run(ZeroMQServer.java:45)
[03:03:18 WARN]:        at java.base/java.lang.Thread.run(Thread.java:833)

Caused by https://github.com/WorldQL/mammoth/blob/105b663ac463f56311bcd6afe73ab24727deb97a/src/main/java/com/worldql/client/ZeroMQServer.java#L45

Strangely this is intermittent and I can't figure out how to consistently reproduce it. Perhaps improper use of Flatbuffers in the serialization.Message class?