[hotfix] Increase dtlsConnectTimeout to 5 minutes - #77
Conversation
I'm increasing the DTLS handshake timeout as a supposed ugly hotfix to a bug in the DTLS handshake we are experiencing in production. We will investigate the problem further and solve it better in subsequent commits. We are experiencing a connect timeout in production: ``` [ERROR][gw] Client TLS handshake error: handshake error: context deadline exceeded ``` This probably leads to some strange condition where the listener is not able to accept further connections. Error we get: ``` [ERROR][gw] Client TLS handshake error: handshake error: write udp [::]:8883->10.0.0.2:31103: sendto: operation not permitted ``` This could be somehow related to `pion/dtls`'s handshakes serialization: ``` Before /v2 Pion DTLS would handshake on Server or Client creation. This design caused the Accept implementation to be blocking. A new connection couldn't be accept until the previous one had finished. ``` but we have not investigated this yet.
|
Caution Review failedThe pull request is closed. WalkthroughIncreased an internal DTLS connection timeout from 30s to 300s in the gateway component. Updated the project version from 0.9.0 to 0.9.1. No public APIs or control flow were modified. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
✨ Finishing touches
🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro Cache: Disabled due to data retention organization setting Knowledge base: Disabled due to data retention organization setting 📒 Files selected for processing (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
I'm increasing the DTLS handshake timeout as a supposed ugly hotfix to a
bug in the DTLS handshake we are experiencing in production. We will
investigate the problem further and solve it better in subsequent
commits.
We are experiencing a connect timeout in production:
This probably leads to some strange condition where the listener is not
able to accept further connections. Error we get:
This could be somehow related to
pion/dtls's handshakes serialization:but we have not investigated this yet.
Summary by CodeRabbit
Bug Fixes
Chores