Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Never stop attempting to connect #60

Closed
FlorentP42 opened this issue Jul 11, 2023 · 0 comments · Fixed by #61
Closed

Never stop attempting to connect #60

FlorentP42 opened this issue Jul 11, 2023 · 0 comments · Fixed by #61
Assignees
Labels
enhancement New feature or request

Comments

@FlorentP42
Copy link
Collaborator

FlorentP42 commented Jul 11, 2023

Is your feature request related to a problem? Please describe.
Currently, if the connexion attempt with the HNZ device fails 5 times in a row, the HNZ south plugin stops attempting to connect on this path, forever (until the whole plugin is reastarted).
A similar case happen when the inactivity timeout triggers during the SARM/UA phase: the connection thread remain stuck in an infinite loop not sending any message any more.

Describe the solution you'd like
The plugin should never stop attempting to connect on both path, until the plugin is shutting down.
When the inactivity timeout is reached during the SARM/UA phase, the server should restart the TCP connection.

Describe alternatives you've considered
N/A

Additional context
N/A

@FlorentP42 FlorentP42 self-assigned this Jul 11, 2023
@FlorentP42 FlorentP42 added the enhancement New feature or request label Jul 11, 2023
FlorentP42 pushed a commit that referenced this issue Jul 13, 2023
FlorentP42 pushed a commit that referenced this issue Jul 13, 2023
FlorentP42 pushed a commit that referenced this issue Jul 13, 2023
…ect as long as the plugin is running. Refactored basic_hnz_server to handle manual reconnection.
FlorentP42 pushed a commit that referenced this issue Aug 24, 2023
…tting down. Switch path now always happen (even if other path is not connected). Also attempt to switch path when connection is lost. Connection status is updated when switching path. Fixed repeated state change hen receiving multiple UA after connection is fully established. Fixed test server never timing out in certain situations, leading to never ending tests.
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…running unit tests.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…ect as long as the plugin is running. Refactored basic_hnz_server to handle manual reconnection.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
- Fixed plugin attempting to reopen connection while it is shutting down.
- Switch path now always happen (even if other path is not connected).
- Also attempt to switch path when connection is lost.
- Connection status is updated when switching path.
- Fixed repeated state change hen receiving multiple UA after connection is fully established.
- Fixed test server never timing out in certain situations, leading to never ending tests.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…leted connection loss test to validate that messages can be exchanged correctly on the new connection.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…d twice on the same path, leading to infinite loop. Added mutex to prevent race condition on the active and passive path in HNZConnection.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…d twice on the same path due to a path swap occuring during the sleep in HNZ::start, leading to infinite loop. Added mutex to prevent race condition on the active and passive path in HNZConnection.

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 25, 2023
…to initialize the TCP connection (without this a path swap may happen during connection init, resulting in failure for some tests relying on precise a path to be active).

Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
Signed-off-by: Florent Peyrusse <[email protected]>
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
FlorentP42 pushed a commit that referenced this issue Aug 28, 2023
FlorentP42 pushed a commit that referenced this issue Aug 29, 2023
@FlorentP42 FlorentP42 linked a pull request Aug 29, 2023 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant