Convex-Dev / convex

Convex Main Repository - Decentralised platform for the Internet of Value
https://convex.world
Other
93 stars 30 forks source link

`Unexpected exception getting Belief: Message too long` #490

Open helins opened 1 year ago

helins commented 1 year ago

It seems all peers issue that pair of warnings very early in simulations, once.

["2023-07-03T11:37:36.944" :warn [convex.net.message.Message 104] ["Bad format in Message payload" {:trace [[convex.core.data.Format decodeMultiCell "Format.java" 738] [convex.net.message.Message getPayload "Message.java" 102] [convex.peer.BeliefPropagator mergeBeliefMessage "BeliefPropagator.java" 297] [convex.peer.BeliefPropagator awaitBelief "BeliefPropagator.java" 280] [convex.peer.BeliefPropagator loop "BeliefPropagator.java" 132] [convex.peer.AThreadedComponent$ComponentTask run "AThreadedComponent.java" 29] [java.lang.Thread run "Thread.java" 833]],:message "Message too long: 10973268",:exception convex.core.exceptions.BadFormatException}]]
["2023-07-03T11:37:36.946" :warn [convex.peer.BeliefPropagator 349] ["Unexpected exception getting Belief" {:trace [[convex.core.data.Format decodeMultiCell "Format.java" 738] [convex.net.message.Message getPayload "Message.java" 102] [convex.peer.BeliefPropagator mergeBeliefMessage "BeliefPropagator.java" 297] [convex.peer.BeliefPropagator awaitBelief "BeliefPropagator.java" 280] [convex.peer.BeliefPropagator loop "BeliefPropagator.java" 132] [convex.peer.AThreadedComponent$ComponentTask run "AThreadedComponent.java" 29] [java.lang.Thread run "Thread.java" 833]],:message "Message too long: 10973268",:exception convex.core.exceptions.BadFormatException}]]
mikera commented 1 year ago

Is your genesis state particularly large?

mikera commented 1 year ago

Solutions: A) Increase message size limitation B) Add debugging code to see what message is causing this

helins commented 1 year ago

Still present as of today

helins commented 1 year ago

Might be resolved. It didn't show up while doing 7 full runs against 80589055.

mikera commented 1 year ago

Glad it is working. I bumped max message size somewhat to make it easier. Longer term fix is to selectively prune messages that risk being too big (though this might cause partial beliefs / temporarily reconciliation delays)