You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Please confirm you have already done the following
I have searched the repository for related/existing bug reports
I have all the details the issue requires
Please answer the following prompt
This issue is replicable using the unmodified sample application
Describe the bug
We encountered an issue where, during network fluctuations, WebRTC's attempt to reconnect fails, which causes WebRTC to not work properly. By checking the logs, we suspect that the program is blocked at the MUTEX_LOCK in the awaitForThreadTermination function. Have you encountered any similar issues
The following figure shows our attempt to add logs to the code and reproduce the situation. The logs that were not typed have been annotated.
[2024-10-07 07:08:39 696809] defaultSignalingStateTransitionHook(85): Retry count: 1
[2024-10-07 07:08:39 696892] defaultSignalingStateTransitionHook(88): Signaling Client base result is [401]. Executing KVS retry handler of retry strategy type [1]
[2024-10-07 07:08:39 696954] validateAndUpdateExponentialBackoffStatus(197): Current status is BACKOFF_IN_PROGRESS
[2024-10-07 07:08:39 697013] resetExponentialBackoffRetryState(42): Thread Id [548489335248]. Resetting Exponential Backoff State. Last retry system time [17283032277713731], retry count so far [1], Current system time [17283101196969944]
[2024-10-07 07:08:39 697075] getExponentialBackoffRetryStrategyWaitTime(275):
Thread Id [548489335248] Number of retries [1], Retry wait time [191] ms, Retry system time [17283101196969931]
[2024-10-07 07:08:39 697135] signalingClientStateChanged(319): Signaling client state changed to 2 - 'Get Security Credentials'
[2024-10-07 07:08:39 888383] readFileCredentials(147): Reading AWS credentials from file: /tmp/kvs_credential, file length = 1087.
[2024-10-07 07:08:39 888635] convertTimestampToEpoch(60): Expiration timestamp conversion into tm structure 124-9-7T14:49:34
[2024-10-07 07:08:39 888799] convertTimestampToEpoch(74): Difference between current time and iot expiration is 2455
[2024-10-07 07:08:39 888876] signalingClientStateChanged(319): Signaling client state changed to 3 - 'Describe Channel'
[2024-10-07 07:08:39 888938] signalingClientStateChanged(319): Signaling client state changed to 5 - 'Get Channel Endpoint'
[2024-10-07 07:08:39 888997] signalingClientStateChanged(319): Signaling client state changed to 6 - 'Get ICE Server Configuration'
[2024-10-07 07:08:39 889101] lwsCompleteSync(545): Perform secure synchronous call for URL: https://r-424ef825.kinesisvideo.ap-northeast-2.amazonaws.com/v1/get-ice-server-config
[2024-10-07 07:08:39 889338] lwsHttpCallbackRoutine(39): HTTPS callback with reason 85
[2024-10-07 07:08:40 047360] lwsHttpCallbackRoutine(39): HTTPS callback with reason 105
[2024-10-07 07:08:40 047634] lwsHttpCallbackRoutine(39): HTTPS callback with reason 19
[2024-10-07 07:08:40 309286] lwsHttpCallbackRoutine(39): HTTPS callback with reason 29
[2024-10-07 07:08:44 306825] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 308055] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 309374] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 310658] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 312555] lwsHttpCallbackRoutine(39): HTTPS callback with reason 24
[2024-10-07 07:08:44 312627] lwsHttpCallbackRoutine(198): Client append handshake header
[2024-10-07 07:08:44 312687] lwsHttpCallbackRoutine(220): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=ASIA43UTFXTUK7K6YXMK/20241007/ap-northeast-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=aa4d8329ef7505963cf1f201b298887aed273c47b0123373d2735b53e492b4d5
[2024-10-07 07:08:44 312761] lwsHttpCallbackRoutine(220): Appending header - content-length: 169
[2024-10-07 07:08:44 312822] lwsHttpCallbackRoutine(220): Appending header - content-type: application/json
[2024-10-07 07:08:44 312882] lwsHttpCallbackRoutine(220): Appending header - user-agent: AWS-SDK-KVS/3.0.0 GCC/10.2.1 Linux/5.4.120 aarch64
[2024-10-07 07:08:44 312941] lwsHttpCallbackRoutine(220): Appending header - X-Amz-Date: 20241007T140839Z
[2024-10-07 07:08:44 313000] lwsHttpCallbackRoutine(220): Appending header - x-amz-security-token: IQoJb3JpZ2luX2VjENb//////////wEaDmFwLW5vcnRoZWFzdC0yIkcwRQIhAJLdDzz6ArKsCKaI4neSuh0RPZ5PxVKnSgSjH8FBT1B0AiA1bOE+d8kJoTuc2UVparHCRVCaAjKXmpUNyZr3bx5sPyrNAwgvEAEaDDg4Mzk5ODE3ODUzNiIM3POKrxJro8RpOKdMKqoD4fz+Xso8WujQhxO9euPaH+XD7yjrcmbiU4OGU21ZNq6S1575YIKF4BUm5vdZBzIthpIyEGci4fy++WKzxPaVG7ucY1Ocz3DZKmMltiPswMF/Gf1l3/P7BsPmYaZT4ULnoM17Fxj3Va5ZgPj7wbiJV++cnRKXV5Y/C84lKKbomy0apv6Xit7ZSyAoVMA80Z+EO+F+LaDRh3m7N3wFyeCf4H+vqXfGb/ToUFNv9j8whZppBheSfHCnzWp4bePURJiow06TGsBs9xVj3T1zK/BNSfaXIB8qACGR5uwwdwKuaTIiZ6OJLaFsM4zVaGsz6HJmpYzm0INgqDf/wx651AJZGkXUQIyqSXaeMvuaWoZg7W+PELo/p/kdN4U8MIp6GnfeIeLUBSo5F+fX3uo6yxnKKOj28eO3JFBlvhfBG7DFRdF8XdZ3u3yYndXOE/Dpv7qI3xXLC1qXDa5onKxvHUnXu00nSsrHj56JrGWobewONYjG6A0tudKeeiw2sWPvowLUnb8o5yC3GT5ineFTNdqh3qs1/GPDGM8/FPbWTLvwXBVBfaP102YVelvnMO7Nj7gGOp0BbOTQfm7y3iucijUReonv7OS1+85AueOSXxlyeouJ9W6k38jIayJ1HwnUHuWhHy1xZ/G6hiiQb6X/q+RbFNHRe+hvlfHzYDeNEwVUb3m2zljqO6Vnyl/Avvv2ua+YOVBrq5lw3wruygrp+P9vuVbdyi/KB6KCdowbsRmzPGoMkSA1s4rFf4IN0fqqDoqxct8gTjmkVUDB5k5FS4wZjw==
[2024-10-07 07:08:44 313223] lwsHttpCallbackRoutine(39): HTTPS callback with reason 57
[2024-10-07 07:08:44 313287] lwsHttpCallbackRoutine(243): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571",
"ClientId": "ProducerMaster",
"Service": "TURN"
}, size 169
[2024-10-07 07:08:45 255650] lwsHttpCallbackRoutine(39): HTTPS callback with reason 2
[2024-10-07 07:08:45 255787] lwsHttpCallbackRoutine(39): HTTPS callback with reason 44
[2024-10-07 07:08:45 255852] lwsHttpCallbackRoutine(106): Connected with server response: 200
[2024-10-07 07:08:45 255931] lwsHttpCallbackRoutine(116): Date Header Returned By Server: Mon, 07 Oct 2024 14:08:45 GMT
[2024-10-07 07:08:45 255997] lwsHttpCallbackRoutine(39): HTTPS callback with reason 46
[2024-10-07 07:08:45 256055] lwsHttpCallbackRoutine(184): Received client http
[2024-10-07 07:08:45 256112] lwsHttpCallbackRoutine(39): HTTPS callback with reason 48
[2024-10-07 07:08:45 256169] lwsHttpCallbackRoutine(155): Received client http read: 1046 bytes
[2024-10-07 07:08:45 256228] lwsHttpCallbackRoutine(177): Received client http read response: {"IceServerList":[{"Password":"1vy6iWURqptDR9fNwrAnZKVay6DL8OiKOwDm+Y+sN5k=","Ttl":300,"Uris":["turn:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310425:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="},{"Password":"lheppfnIzyZqdsZVookQ4ZNlW5q7809xj2xWV9rRZI4=","Ttl":300,"Uris":["turn:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310425:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="}]}
[2024-10-07 07:08:45 256287] lwsHttpCallbackRoutine(39): HTTPS callback with reason 47
[2024-10-07 07:08:45 256354] lwsHttpCallbackRoutine(194): Http client completed
[2024-10-07 07:08:45 256458] lwsHttpCallbackRoutine(39): HTTPS callback with reason 45
[2024-10-07 07:08:45 256520] lwsHttpCallbackRoutine(97): Client http closed
[2024-10-07 07:08:45 256692] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:08:45 256964] signalingClientStateChanged(319): Signaling client state changed to 7 - 'Ready'
[2024-10-07 07:08:45 257036] signalingClientStateChanged(319): Signaling client state changed to 8 - 'Connecting'
[2024-10-07 07:08:45 257273] lwsCompleteSync(545): Perform secure synchronous call for URL: wss://m-8f1d6e17.kinesisvideo.ap-northeast-2.amazonaws.com?X-Amz-ChannelARN=arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571
[2024-10-07 07:08:45 257623] lwsWssCallbackRoutine(301): WSS callback with reason 85
[2024-10-07 07:08:45 458966] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:08:45 459306] lwsWssCallbackRoutine(301): WSS callback with reason 19
[2024-10-07 07:08:51 520073] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:08:57 536001] lwsWssCallbackRoutine(301): WSS callback with reason 1
[2024-10-07 07:08:57 536105] lwsWssCallbackRoutine(342): Client connection failed. Connection error string: conn fail: errno 110
[2024-10-07 07:08:57 536181] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:08:57 536351] defaultSignalingStateTransitionHook(85): Retry count: 1
[2024-10-07 07:08:57 536428] defaultSignalingStateTransitionHook(88): Signaling Client base result is [10006]. Executing KVS retry handler of retry strategy type [1]
[2024-10-07 07:08:57 536489] validateAndUpdateExponentialBackoffStatus(197): Current status is BACKOFF_IN_PROGRESS
[2024-10-07 07:08:57 536549] getExponentialBackoffRetryStrategyWaitTime(275):
Thread Id [548489335248] Number of retries [2], Retry wait time [238] ms, Retry system time [17283101375365284]
[2024-10-07 07:08:57 536610] signalingClientStateChanged(319): Signaling client state changed to 2 - 'Get Security Credentials'
[2024-10-07 07:08:57 774541] signalingClientStateChanged(319): Signaling client state changed to 3 - 'Describe Channel'
[2024-10-07 07:08:57 774671] signalingClientStateChanged(319): Signaling client state changed to 5 - 'Get Channel Endpoint'
[2024-10-07 07:08:57 774767] signalingClientStateChanged(319): Signaling client state changed to 6 - 'Get ICE Server Configuration'
[2024-10-07 07:08:57 774883] lwsCompleteSync(545): Perform secure synchronous call for URL: https://r-424ef825.kinesisvideo.ap-northeast-2.amazonaws.com/v1/get-ice-server-config
[2024-10-07 07:08:57 775155] lwsHttpCallbackRoutine(39): HTTPS callback with reason 85
[2024-10-07 07:08:57 864961] lwsHttpCallbackRoutine(39): HTTPS callback with reason 105
[2024-10-07 07:08:57 865220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 19
[2024-10-07 07:08:58 119276] lwsHttpCallbackRoutine(39): HTTPS callback with reason 29
[2024-10-07 07:09:04 514987] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 516220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 517502] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 518794] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 520625] lwsHttpCallbackRoutine(39): HTTPS callback with reason 24
[2024-10-07 07:09:04 520697] lwsHttpCallbackRoutine(198): Client append handshake header
[2024-10-07 07:09:04 520769] lwsHttpCallbackRoutine(220): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=ASIA43UTFXTUK7K6YXMK/20241007/ap-northeast-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=e904ad9895b2ee6cf1b69d69da179218724ca929a3e60f00e86150523575f94b
[2024-10-07 07:09:04 520831] lwsHttpCallbackRoutine(220): Appending header - content-length: 169
[2024-10-07 07:09:04 520891] lwsHttpCallbackRoutine(220): Appending header - content-type: application/json
[2024-10-07 07:09:04 520950] lwsHttpCallbackRoutine(220): Appending header - user-agent: AWS-SDK-KVS/3.0.0 GCC/10.2.1 Linux/5.4.120 aarch64
[2024-10-07 07:09:04 521008] lwsHttpCallbackRoutine(220): Appending header - X-Amz-Date: 20241007T140857Z
[2024-10-07 07:09:04 521066] lwsHttpCallbackRoutine(220): Appending header - x-amz-security-token: IQoJb3JpZ2luX2VjENb//////////wEaDmFwLW5vcnRoZWFzdC0yIkcwRQIhAJLdDzz6ArKsCKaI4neSuh0RPZ5PxVKnSgSjH8FBT1B0AiA1bOE+d8kJoTuc2UVparHCRVCaAjKXmpUNyZr3bx5sPyrNAwgvEAEaDDg4Mzk5ODE3ODUzNiIM3POKrxJro8RpOKdMKqoD4fz+Xso8WujQhxO9euPaH+XD7yjrcmbiU4OGU21ZNq6S1575YIKF4BUm5vdZBzIthpIyEGci4fy++WKzxPaVG7ucY1Ocz3DZKmMltiPswMF/Gf1l3/P7BsPmYaZT4ULnoM17Fxj3Va5ZgPj7wbiJV++cnRKXV5Y/C84lKKbomy0apv6Xit7ZSyAoVMA80Z+EO+F+LaDRh3m7N3wFyeCf4H+vqXfGb/ToUFNv9j8whZppBheSfHCnzWp4bePURJiow06TGsBs9xVj3T1zK/BNSfaXIB8qACGR5uwwdwKuaTIiZ6OJLaFsM4zVaGsz6HJmpYzm0INgqDf/wx651AJZGkXUQIyqSXaeMvuaWoZg7W+PELo/p/kdN4U8MIp6GnfeIeLUBSo5F+fX3uo6yxnKKOj28eO3JFBlvhfBG7DFRdF8XdZ3u3yYndXOE/Dpv7qI3xXLC1qXDa5onKxvHUnXu00nSsrHj56JrGWobewONYjG6A0tudKeeiw2sWPvowLUnb8o5yC3GT5ineFTNdqh3qs1/GPDGM8/FPbWTLvwXBVBfaP102YVelvnMO7Nj7gGOp0BbOTQfm7y3iucijUReonv7OS1+85AueOSXxlyeouJ9W6k38jIayJ1HwnUHuWhHy1xZ/G6hiiQb6X/q+RbFNHRe+hvlfHzYDeNEwVUb3m2zljqO6Vnyl/Avvv2ua+YOVBrq5lw3wruygrp+P9vuVbdyi/KB6KCdowbsRmzPGoMkSA1s4rFf4IN0fqqDoqxct8gTjmkVUDB5k5FS4wZjw==
[2024-10-07 07:09:04 521288] lwsHttpCallbackRoutine(39): HTTPS callback with reason 57
[2024-10-07 07:09:04 521352] lwsHttpCallbackRoutine(243): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571",
"ClientId": "ProducerMaster",
"Service": "TURN"
}, size 169
[2024-10-07 07:09:07 019673] lwsHttpCallbackRoutine(39): HTTPS callback with reason 2
[2024-10-07 07:09:07 019803] lwsHttpCallbackRoutine(39): HTTPS callback with reason 44
[2024-10-07 07:09:07 019868] lwsHttpCallbackRoutine(106): Connected with server response: 200
[2024-10-07 07:09:07 019934] lwsHttpCallbackRoutine(116): Date Header Returned By Server: Mon, 07 Oct 2024 14:09:07 GMT
[2024-10-07 07:09:07 019998] lwsHttpCallbackRoutine(39): HTTPS callback with reason 46
[2024-10-07 07:09:07 020057] lwsHttpCallbackRoutine(184): Received client http
[2024-10-07 07:09:07 020115] lwsHttpCallbackRoutine(39): HTTPS callback with reason 48
[2024-10-07 07:09:07 020183] lwsHttpCallbackRoutine(155): Received client http read: 1052 bytes
[2024-10-07 07:09:07 020244] lwsHttpCallbackRoutine(177): Received client http read response: {"IceServerList":[{"Password":"GD11su40qDMZB0qel+pLEG8MOSGg4vl2+nG/dSSABOU=","Ttl":300,"Uris":["turn:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310447:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="},{"Password":"5cDp8EBYmHyJSYYlZQErCtmwVn2LP86sntJT1HgVB8E=","Ttl":300,"Uris":["turn:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310447:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="}]}
[2024-10-07 07:09:07 020305] lwsHttpCallbackRoutine(39): HTTPS callback with reason 47
[2024-10-07 07:09:07 020364] lwsHttpCallbackRoutine(194): Http client completed
[2024-10-07 07:09:07 020464] lwsHttpCallbackRoutine(39): HTTPS callback with reason 45
[2024-10-07 07:09:07 020526] lwsHttpCallbackRoutine(97): Client http closed
[2024-10-07 07:09:07 020690] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:09:07 020884] signalingClientStateChanged(319): Signaling client state changed to 7 - 'Ready'
[2024-10-07 07:09:07 020952] signalingClientStateChanged(319): Signaling client state changed to 8 - 'Connecting'
[2024-10-07 07:09:07 021141] lwsCompleteSync(545): Perform secure synchronous call for URL: wss://m-8f1d6e17.kinesisvideo.ap-northeast-2.amazonaws.com?X-Amz-ChannelARN=arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571
[2024-10-07 07:09:07 021445] lwsWssCallbackRoutine(301): WSS callback with reason 85
[2024-10-07 07:09:07 239869] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:09:07 240133] lwsWssCallbackRoutine(301): WSS callback with reason 19
[2024-10-07 07:09:13 280111] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:09:13 545642] lwsWssCallbackRoutine(301): WSS callback with reason 29
[2024-10-07 07:09:17 003957] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 005220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 006508] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 007797] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 009600] lwsWssCallbackRoutine(301): WSS callback with reason 24
[2024-10-07 07:09:23 583845] lwsWssCallbackRoutine(301): WSS callback with reason 45
[2024-10-07 07:09:23 584078] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:09:37 021198] ### connectSignalingChannelLws(1448): operation returned status code: 0x0000000f
Expected Behavior
The above issue seems to have caused problems for WebRTC when communicating with the signaling server, and the retry mechanism is also ineffective, resulting in WebRTC not working properly. Have you encountered similar problems before?
Current Behavior
n/a
Reproduction Steps
Not a necessary case, this situation may occur when the network fluctuates
WebRTC C SDK version being used
1.7.3
If it was working in a previous version, which one?
No response
Compiler and Version used
gcc 7.4.0
Operating System and version
ubuntu 18.04
Platform being used
linux
The text was updated successfully, but these errors were encountered:
We currently don't have time to update, as it has been quite stable apart from this occasional issue. Could you please let me know if the latest version is stable? Has this issue been resolved?
Please confirm you have already done the following
Please answer the following prompt
Describe the bug
We encountered an issue where, during network fluctuations, WebRTC's attempt to reconnect fails, which causes WebRTC to not work properly. By checking the logs, we suspect that the program is blocked at the MUTEX_LOCK in the awaitForThreadTermination function. Have you encountered any similar issues
The following figure shows our attempt to add logs to the code and reproduce the situation. The logs that were not typed have been annotated.
[2024-10-07 07:08:39 696809] defaultSignalingStateTransitionHook(85): Retry count: 1
[2024-10-07 07:08:39 696892] defaultSignalingStateTransitionHook(88): Signaling Client base result is [401]. Executing KVS retry handler of retry strategy type [1]
[2024-10-07 07:08:39 696954] validateAndUpdateExponentialBackoffStatus(197): Current status is BACKOFF_IN_PROGRESS
[2024-10-07 07:08:39 697013] resetExponentialBackoffRetryState(42): Thread Id [548489335248]. Resetting Exponential Backoff State. Last retry system time [17283032277713731], retry count so far [1], Current system time [17283101196969944]
[2024-10-07 07:08:39 697075] getExponentialBackoffRetryStrategyWaitTime(275):
Thread Id [548489335248] Number of retries [1], Retry wait time [191] ms, Retry system time [17283101196969931]
[2024-10-07 07:08:39 697135] signalingClientStateChanged(319): Signaling client state changed to 2 - 'Get Security Credentials'
[2024-10-07 07:08:39 888383] readFileCredentials(147): Reading AWS credentials from file: /tmp/kvs_credential, file length = 1087.
[2024-10-07 07:08:39 888635] convertTimestampToEpoch(60): Expiration timestamp conversion into tm structure 124-9-7T14:49:34
[2024-10-07 07:08:39 888799] convertTimestampToEpoch(74): Difference between current time and iot expiration is 2455
[2024-10-07 07:08:39 888876] signalingClientStateChanged(319): Signaling client state changed to 3 - 'Describe Channel'
[2024-10-07 07:08:39 888938] signalingClientStateChanged(319): Signaling client state changed to 5 - 'Get Channel Endpoint'
[2024-10-07 07:08:39 888997] signalingClientStateChanged(319): Signaling client state changed to 6 - 'Get ICE Server Configuration'
[2024-10-07 07:08:39 889101] lwsCompleteSync(545): Perform secure synchronous call for URL: https://r-424ef825.kinesisvideo.ap-northeast-2.amazonaws.com/v1/get-ice-server-config
[2024-10-07 07:08:39 889338] lwsHttpCallbackRoutine(39): HTTPS callback with reason 85
[2024-10-07 07:08:40 047360] lwsHttpCallbackRoutine(39): HTTPS callback with reason 105
[2024-10-07 07:08:40 047634] lwsHttpCallbackRoutine(39): HTTPS callback with reason 19
[2024-10-07 07:08:40 309286] lwsHttpCallbackRoutine(39): HTTPS callback with reason 29
[2024-10-07 07:08:44 306825] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 308055] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 309374] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 310658] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:08:44 312555] lwsHttpCallbackRoutine(39): HTTPS callback with reason 24
[2024-10-07 07:08:44 312627] lwsHttpCallbackRoutine(198): Client append handshake header
[2024-10-07 07:08:44 312687] lwsHttpCallbackRoutine(220): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=ASIA43UTFXTUK7K6YXMK/20241007/ap-northeast-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=aa4d8329ef7505963cf1f201b298887aed273c47b0123373d2735b53e492b4d5
[2024-10-07 07:08:44 312761] lwsHttpCallbackRoutine(220): Appending header - content-length: 169
[2024-10-07 07:08:44 312822] lwsHttpCallbackRoutine(220): Appending header - content-type: application/json
[2024-10-07 07:08:44 312882] lwsHttpCallbackRoutine(220): Appending header - user-agent: AWS-SDK-KVS/3.0.0 GCC/10.2.1 Linux/5.4.120 aarch64
[2024-10-07 07:08:44 312941] lwsHttpCallbackRoutine(220): Appending header - X-Amz-Date: 20241007T140839Z
[2024-10-07 07:08:44 313000] lwsHttpCallbackRoutine(220): Appending header - x-amz-security-token: IQoJb3JpZ2luX2VjENb//////////wEaDmFwLW5vcnRoZWFzdC0yIkcwRQIhAJLdDzz6ArKsCKaI4neSuh0RPZ5PxVKnSgSjH8FBT1B0AiA1bOE+d8kJoTuc2UVparHCRVCaAjKXmpUNyZr3bx5sPyrNAwgvEAEaDDg4Mzk5ODE3ODUzNiIM3POKrxJro8RpOKdMKqoD4fz+Xso8WujQhxO9euPaH+XD7yjrcmbiU4OGU21ZNq6S1575YIKF4BUm5vdZBzIthpIyEGci4fy++WKzxPaVG7ucY1Ocz3DZKmMltiPswMF/Gf1l3/P7BsPmYaZT4ULnoM17Fxj3Va5ZgPj7wbiJV++cnRKXV5Y/C84lKKbomy0apv6Xit7ZSyAoVMA80Z+EO+F+LaDRh3m7N3wFyeCf4H+vqXfGb/ToUFNv9j8whZppBheSfHCnzWp4bePURJiow06TGsBs9xVj3T1zK/BNSfaXIB8qACGR5uwwdwKuaTIiZ6OJLaFsM4zVaGsz6HJmpYzm0INgqDf/wx651AJZGkXUQIyqSXaeMvuaWoZg7W+PELo/p/kdN4U8MIp6GnfeIeLUBSo5F+fX3uo6yxnKKOj28eO3JFBlvhfBG7DFRdF8XdZ3u3yYndXOE/Dpv7qI3xXLC1qXDa5onKxvHUnXu00nSsrHj56JrGWobewONYjG6A0tudKeeiw2sWPvowLUnb8o5yC3GT5ineFTNdqh3qs1/GPDGM8/FPbWTLvwXBVBfaP102YVelvnMO7Nj7gGOp0BbOTQfm7y3iucijUReonv7OS1+85AueOSXxlyeouJ9W6k38jIayJ1HwnUHuWhHy1xZ/G6hiiQb6X/q+RbFNHRe+hvlfHzYDeNEwVUb3m2zljqO6Vnyl/Avvv2ua+YOVBrq5lw3wruygrp+P9vuVbdyi/KB6KCdowbsRmzPGoMkSA1s4rFf4IN0fqqDoqxct8gTjmkVUDB5k5FS4wZjw==
[2024-10-07 07:08:44 313223] lwsHttpCallbackRoutine(39): HTTPS callback with reason 57
[2024-10-07 07:08:44 313287] lwsHttpCallbackRoutine(243): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571",
"ClientId": "ProducerMaster",
"Service": "TURN"
}, size 169
[2024-10-07 07:08:45 255650] lwsHttpCallbackRoutine(39): HTTPS callback with reason 2
[2024-10-07 07:08:45 255787] lwsHttpCallbackRoutine(39): HTTPS callback with reason 44
[2024-10-07 07:08:45 255852] lwsHttpCallbackRoutine(106): Connected with server response: 200
[2024-10-07 07:08:45 255931] lwsHttpCallbackRoutine(116): Date Header Returned By Server: Mon, 07 Oct 2024 14:08:45 GMT
[2024-10-07 07:08:45 255997] lwsHttpCallbackRoutine(39): HTTPS callback with reason 46
[2024-10-07 07:08:45 256055] lwsHttpCallbackRoutine(184): Received client http
[2024-10-07 07:08:45 256112] lwsHttpCallbackRoutine(39): HTTPS callback with reason 48
[2024-10-07 07:08:45 256169] lwsHttpCallbackRoutine(155): Received client http read: 1046 bytes
[2024-10-07 07:08:45 256228] lwsHttpCallbackRoutine(177): Received client http read response: {"IceServerList":[{"Password":"1vy6iWURqptDR9fNwrAnZKVay6DL8OiKOwDm+Y+sN5k=","Ttl":300,"Uris":["turn:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-37-127-207.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310425:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="},{"Password":"lheppfnIzyZqdsZVookQ4ZNlW5q7809xj2xWV9rRZI4=","Ttl":300,"Uris":["turn:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310425:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="}]}
[2024-10-07 07:08:45 256287] lwsHttpCallbackRoutine(39): HTTPS callback with reason 47
[2024-10-07 07:08:45 256354] lwsHttpCallbackRoutine(194): Http client completed
[2024-10-07 07:08:45 256458] lwsHttpCallbackRoutine(39): HTTPS callback with reason 45
[2024-10-07 07:08:45 256520] lwsHttpCallbackRoutine(97): Client http closed
[2024-10-07 07:08:45 256692] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:08:45 256964] signalingClientStateChanged(319): Signaling client state changed to 7 - 'Ready'
[2024-10-07 07:08:45 257036] signalingClientStateChanged(319): Signaling client state changed to 8 - 'Connecting'
[2024-10-07 07:08:45 257273] lwsCompleteSync(545): Perform secure synchronous call for URL: wss://m-8f1d6e17.kinesisvideo.ap-northeast-2.amazonaws.com?X-Amz-ChannelARN=arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571
[2024-10-07 07:08:45 257623] lwsWssCallbackRoutine(301): WSS callback with reason 85
[2024-10-07 07:08:45 458966] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:08:45 459306] lwsWssCallbackRoutine(301): WSS callback with reason 19
[2024-10-07 07:08:51 520073] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:08:57 536001] lwsWssCallbackRoutine(301): WSS callback with reason 1
[2024-10-07 07:08:57 536105] lwsWssCallbackRoutine(342): Client connection failed. Connection error string: conn fail: errno 110
[2024-10-07 07:08:57 536181] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:08:57 536351] defaultSignalingStateTransitionHook(85): Retry count: 1
[2024-10-07 07:08:57 536428] defaultSignalingStateTransitionHook(88): Signaling Client base result is [10006]. Executing KVS retry handler of retry strategy type [1]
[2024-10-07 07:08:57 536489] validateAndUpdateExponentialBackoffStatus(197): Current status is BACKOFF_IN_PROGRESS
[2024-10-07 07:08:57 536549] getExponentialBackoffRetryStrategyWaitTime(275):
Thread Id [548489335248] Number of retries [2], Retry wait time [238] ms, Retry system time [17283101375365284]
[2024-10-07 07:08:57 536610] signalingClientStateChanged(319): Signaling client state changed to 2 - 'Get Security Credentials'
[2024-10-07 07:08:57 774541] signalingClientStateChanged(319): Signaling client state changed to 3 - 'Describe Channel'
[2024-10-07 07:08:57 774671] signalingClientStateChanged(319): Signaling client state changed to 5 - 'Get Channel Endpoint'
[2024-10-07 07:08:57 774767] signalingClientStateChanged(319): Signaling client state changed to 6 - 'Get ICE Server Configuration'
[2024-10-07 07:08:57 774883] lwsCompleteSync(545): Perform secure synchronous call for URL: https://r-424ef825.kinesisvideo.ap-northeast-2.amazonaws.com/v1/get-ice-server-config
[2024-10-07 07:08:57 775155] lwsHttpCallbackRoutine(39): HTTPS callback with reason 85
[2024-10-07 07:08:57 864961] lwsHttpCallbackRoutine(39): HTTPS callback with reason 105
[2024-10-07 07:08:57 865220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 19
[2024-10-07 07:08:58 119276] lwsHttpCallbackRoutine(39): HTTPS callback with reason 29
[2024-10-07 07:09:04 514987] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 516220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 517502] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 518794] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:04 520625] lwsHttpCallbackRoutine(39): HTTPS callback with reason 24
[2024-10-07 07:09:04 520697] lwsHttpCallbackRoutine(198): Client append handshake header
[2024-10-07 07:09:04 520769] lwsHttpCallbackRoutine(220): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=ASIA43UTFXTUK7K6YXMK/20241007/ap-northeast-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=e904ad9895b2ee6cf1b69d69da179218724ca929a3e60f00e86150523575f94b
[2024-10-07 07:09:04 520831] lwsHttpCallbackRoutine(220): Appending header - content-length: 169
[2024-10-07 07:09:04 520891] lwsHttpCallbackRoutine(220): Appending header - content-type: application/json
[2024-10-07 07:09:04 520950] lwsHttpCallbackRoutine(220): Appending header - user-agent: AWS-SDK-KVS/3.0.0 GCC/10.2.1 Linux/5.4.120 aarch64
[2024-10-07 07:09:04 521008] lwsHttpCallbackRoutine(220): Appending header - X-Amz-Date: 20241007T140857Z
[2024-10-07 07:09:04 521066] lwsHttpCallbackRoutine(220): Appending header - x-amz-security-token: IQoJb3JpZ2luX2VjENb//////////wEaDmFwLW5vcnRoZWFzdC0yIkcwRQIhAJLdDzz6ArKsCKaI4neSuh0RPZ5PxVKnSgSjH8FBT1B0AiA1bOE+d8kJoTuc2UVparHCRVCaAjKXmpUNyZr3bx5sPyrNAwgvEAEaDDg4Mzk5ODE3ODUzNiIM3POKrxJro8RpOKdMKqoD4fz+Xso8WujQhxO9euPaH+XD7yjrcmbiU4OGU21ZNq6S1575YIKF4BUm5vdZBzIthpIyEGci4fy++WKzxPaVG7ucY1Ocz3DZKmMltiPswMF/Gf1l3/P7BsPmYaZT4ULnoM17Fxj3Va5ZgPj7wbiJV++cnRKXV5Y/C84lKKbomy0apv6Xit7ZSyAoVMA80Z+EO+F+LaDRh3m7N3wFyeCf4H+vqXfGb/ToUFNv9j8whZppBheSfHCnzWp4bePURJiow06TGsBs9xVj3T1zK/BNSfaXIB8qACGR5uwwdwKuaTIiZ6OJLaFsM4zVaGsz6HJmpYzm0INgqDf/wx651AJZGkXUQIyqSXaeMvuaWoZg7W+PELo/p/kdN4U8MIp6GnfeIeLUBSo5F+fX3uo6yxnKKOj28eO3JFBlvhfBG7DFRdF8XdZ3u3yYndXOE/Dpv7qI3xXLC1qXDa5onKxvHUnXu00nSsrHj56JrGWobewONYjG6A0tudKeeiw2sWPvowLUnb8o5yC3GT5ineFTNdqh3qs1/GPDGM8/FPbWTLvwXBVBfaP102YVelvnMO7Nj7gGOp0BbOTQfm7y3iucijUReonv7OS1+85AueOSXxlyeouJ9W6k38jIayJ1HwnUHuWhHy1xZ/G6hiiQb6X/q+RbFNHRe+hvlfHzYDeNEwVUb3m2zljqO6Vnyl/Avvv2ua+YOVBrq5lw3wruygrp+P9vuVbdyi/KB6KCdowbsRmzPGoMkSA1s4rFf4IN0fqqDoqxct8gTjmkVUDB5k5FS4wZjw==
[2024-10-07 07:09:04 521288] lwsHttpCallbackRoutine(39): HTTPS callback with reason 57
[2024-10-07 07:09:04 521352] lwsHttpCallbackRoutine(243): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571",
"ClientId": "ProducerMaster",
"Service": "TURN"
}, size 169
[2024-10-07 07:09:07 019673] lwsHttpCallbackRoutine(39): HTTPS callback with reason 2
[2024-10-07 07:09:07 019803] lwsHttpCallbackRoutine(39): HTTPS callback with reason 44
[2024-10-07 07:09:07 019868] lwsHttpCallbackRoutine(106): Connected with server response: 200
[2024-10-07 07:09:07 019934] lwsHttpCallbackRoutine(116): Date Header Returned By Server: Mon, 07 Oct 2024 14:09:07 GMT
[2024-10-07 07:09:07 019998] lwsHttpCallbackRoutine(39): HTTPS callback with reason 46
[2024-10-07 07:09:07 020057] lwsHttpCallbackRoutine(184): Received client http
[2024-10-07 07:09:07 020115] lwsHttpCallbackRoutine(39): HTTPS callback with reason 48
[2024-10-07 07:09:07 020183] lwsHttpCallbackRoutine(155): Received client http read: 1052 bytes
[2024-10-07 07:09:07 020244] lwsHttpCallbackRoutine(177): Received client http read response: {"IceServerList":[{"Password":"GD11su40qDMZB0qel+pLEG8MOSGg4vl2+nG/dSSABOU=","Ttl":300,"Uris":["turn:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:43-203-254-165.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310447:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="},{"Password":"5cDp8EBYmHyJSYYlZQErCtmwVn2LP86sntJT1HgVB8E=","Ttl":300,"Uris":["turn:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=udp","turns:3-34-123-43.t-cf94f1b5.kinesisvideo.ap-northeast-2.amazonaws.com:443?transport=tcp"],"Username":"1728310447:djE6YXJuOmF3czpraW5lc2lzdmlkZW86YXAtbm9ydGhlYXN0LTI6ODgzOTk4MTc4NTM2OmNoYW5uZWwvM0M2MkYwMThEQjYwLTIyMTJETU0wMDAwNzUvMTY3OTkwMTIyNjU3MQ=="}]}
[2024-10-07 07:09:07 020305] lwsHttpCallbackRoutine(39): HTTPS callback with reason 47
[2024-10-07 07:09:07 020364] lwsHttpCallbackRoutine(194): Http client completed
[2024-10-07 07:09:07 020464] lwsHttpCallbackRoutine(39): HTTPS callback with reason 45
[2024-10-07 07:09:07 020526] lwsHttpCallbackRoutine(97): Client http closed
[2024-10-07 07:09:07 020690] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:09:07 020884] signalingClientStateChanged(319): Signaling client state changed to 7 - 'Ready'
[2024-10-07 07:09:07 020952] signalingClientStateChanged(319): Signaling client state changed to 8 - 'Connecting'
[2024-10-07 07:09:07 021141] lwsCompleteSync(545): Perform secure synchronous call for URL: wss://m-8f1d6e17.kinesisvideo.ap-northeast-2.amazonaws.com?X-Amz-ChannelARN=arn:aws:kinesisvideo:ap-northeast-2:883998178536:channel/3C62F018DB60-2212DMM000075/1679901226571
[2024-10-07 07:09:07 021445] lwsWssCallbackRoutine(301): WSS callback with reason 85
[2024-10-07 07:09:07 239869] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:09:07 240133] lwsWssCallbackRoutine(301): WSS callback with reason 19
[2024-10-07 07:09:13 280111] lwsWssCallbackRoutine(301): WSS callback with reason 105
[2024-10-07 07:09:13 545642] lwsWssCallbackRoutine(301): WSS callback with reason 29
[2024-10-07 07:09:17 003957] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 005220] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 006508] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 007797] lwsHttpCallbackRoutine(39): HTTPS callback with reason 58
[2024-10-07 07:09:17 009600] lwsWssCallbackRoutine(301): WSS callback with reason 24
[2024-10-07 07:09:23 583845] lwsWssCallbackRoutine(301): WSS callback with reason 45
[2024-10-07 07:09:23 584078] lwsHttpCallbackRoutine(39): HTTPS callback with reason 30
[2024-10-07 07:09:37 021198] ### connectSignalingChannelLws(1448): operation returned status code: 0x0000000f
Expected Behavior
The above issue seems to have caused problems for WebRTC when communicating with the signaling server, and the retry mechanism is also ineffective, resulting in WebRTC not working properly. Have you encountered similar problems before?
Current Behavior
n/a
Reproduction Steps
Not a necessary case, this situation may occur when the network fluctuates
WebRTC C SDK version being used
1.7.3
If it was working in a previous version, which one?
No response
Compiler and Version used
gcc 7.4.0
Operating System and version
ubuntu 18.04
Platform being used
linux
The text was updated successfully, but these errors were encountered: