Do not disconnect dashboard_client on read timeout #414
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, we disconnect from the dashboard server whenever we don't receive an answer inside the configured timeout and we throw an exception. The idea behind that was, that if we don't get an answer in time there's probably something wrong with the connection, anyway. However, it could just be that the command in question takes longer to process. There are a couple of commands where we manually add higher timeouts, such as generating the flight report, but also powering on the robot after an update can take longer if the firmware has to be updated.
With the change in this commit, we still throw the exception leaving it up to the application layer to handle this. However, keeping the connection alive allows running other dashboard commands to inspect what's going on or simply retry with another timeout setting.