Skip to content

RFC: fixing tcpreconnects, setup.py, statemachine timeouts, improve logging. - #27

Open
lynxis wants to merge 9 commits into
heimiricmr:masterfrom
lynxis:tcpreconnects
Open

RFC: fixing tcpreconnects, setup.py, statemachine timeouts, improve logging.#27
lynxis wants to merge 9 commits into
heimiricmr:masterfrom
lynxis:tcpreconnects

Conversation

@lynxis

@lynxis lynxis commented May 5, 2025

Copy link
Copy Markdown

Hi,

I've started to look into tcp connection problems and reconnect issues.
While doing so I've implemented timeouts in the state machine.
The timeout should validated with the RFC (setting correct values!).

Further I've catched TCP BlockIOError when the connection is still setting up.

PS. It seems the maintainer (btw. thank you for bromelia!) isn't active on this project atm. I'm leaving my PR/branch here also to improvo visibility.

lynxis added 9 commits April 16, 2025 19:49
When a State contains a timeout, execute the timeout event "event_timeout"
after the time execeeed.
Further allow state to return "NONE" as next state to keep the current
timeout.
Transmitting on a non-open socket seems to block (even when transmitting zero length data).
Only do the testing by using internal state variables.
A BlockingIOError can happen when the connection still trying to connect.
Ignore BlockingIOError for now, but catch all other exceptions.
mandatory avps can appear multiple times. It should be checked
if all of them appeared often enough. But for now, check for at
least 5/6 mandatory avps
…eue handling.

The queue itself is multi-threaded safe. Remove superflous locks for accessing
association.postprocess_recv_messages.

To prevent other deadlock, wait with an timeout for a message.
Instead of silent ignoring them.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant