When a reconnection is started, we first do reachability checks and if during that time we get a FAILED connection state notification, we end up starting another reconnection. We should only do 1 reconnection at a time.
by making the following changes
Setting ReconnectionManager.status to IN_PROGRESS sooner and also refactored the code a bit so that the status is private and only ReconnectionManager changes it. Also moved sending of some metrics and emitting events from Meeting into ReconnectionManager so that now ReconnectionManager really is the one managing the reconnection.
Change Type
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
COMPLETES #SPARK-531442
This pull request addresses
When a reconnection is started, we first do reachability checks and if during that time we get a FAILED connection state notification, we end up starting another reconnection. We should only do 1 reconnection at a time.
by making the following changes
Setting ReconnectionManager.status to IN_PROGRESS sooner and also refactored the code a bit so that the status is private and only ReconnectionManager changes it. Also moved sending of some metrics and emitting events from Meeting into ReconnectionManager so that now ReconnectionManager really is the one managing the reconnection.
Change Type
The following scenarios where tested
unit tests
I certified that
[x] I have read and followed contributing guidelines
[x] I discussed changes with code owners prior to submitting this pull request
[x] I have not skipped any automated checks
[x] All existing and new tests passed
[x] I have updated the documentation accordingly
Make sure to have followed the contributing guidelines before submitting.