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

Stun client transaction re-transmission based on ScheduledThreadPoolExecutor #153

Conversation

mstyura
Copy link
Contributor

@mstyura mstyura commented Oct 31, 2018

Re-implemented STUN Client transaction re-transmission based on ScheduledThreadPoolExecutor.
This allowed to avoid usage of complicated synchronization primitives and enhanced thread's re-use in the thread pool.
It also fixed test testMaxWaitIntervalConfigurationParameter in TransactionSupportTests.java which counted number of re-transmission attempt.
Previous implementation had bug when doubling re-transmission delay - it exceed max allowed delay.

Observed enhancement in my environment: 30 conferences with 3 audio only peers each.
Before: 233 threads inside StunClientTransaction thread pool.
After: 1 Thread instance inside StunClientTransaction thread pool.

@mstyura
Copy link
Contributor Author

mstyura commented Oct 31, 2018

@bbaldino could you please review these changes?

@mstyura
Copy link
Contributor Author

mstyura commented Oct 31, 2018

@bbaldino could you please merge this if no other approvals needed?

@bbaldino bbaldino merged commit 513fb58 into jitsi:master Oct 31, 2018
@bbaldino
Copy link
Member

was just waiting for the tests to pass

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.

2 participants