Closed mycognosist closed 8 months ago
Upon further observation, this behaviour is happening when an active session is underway and then Manyverse is closed. When Manyverse is started again, it connects to solar and solar then acts as responder. I noticed that solar is sending a vector clock twice. I believe this is because the MUXRPC handler from the first session is still active; then a second handler is started when the second connection takes place.
I'm not sure if this is the root of the issue but it needs to be dealt with anyway. So what I need to do is first ensure that the EBT MUXRPC handler is terminated when the associated network connection drops.
The issue turned out to be the sign of the request number. When acting as initiator, every outbound request number must be positive (even if the outbound message is classed as a "response"). The opposite is true when acting as responder.
An active session between solar and Manyverse appears to timeout after 10 minutes. This must be initiated from Manyverse because there are not currently any such timeout counters in solar.
solar then takes the role of an EBT session responder for a new session (initiated by Manyverse) but for some reason the session is concluded immediately, seemingly by solar (this assumption has yet to be tested).
Here we see two log entries from an active session, followed by 10 minutes of nothing, and then we wait for a session request. This
wait for session
->session concluded
loop continues again and again.And the logs from the Manyverse side: