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

Merged
merged 6 commits into from Oct 31, 2018

Conversation

Projects
None yet
2 participants
@mstyura
Contributor

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

This comment has been minimized.

Contributor

mstyura commented Oct 31, 2018

@bbaldino could you please review these changes?

@mstyura

This comment has been minimized.

Contributor

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

1 check passed

default 490 tests run, 356 skipped, 0 failed.
Details
@bbaldino

This comment has been minimized.

Member

bbaldino commented Oct 31, 2018

was just waiting for the tests to pass

@mstyura mstyura deleted the mstyura:stun-client-transaction-retransmit-scheduled-thread-pool branch Nov 1, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment