I am using latest Kurento Media Server (6.4) and node.js app for one-2-one calls. However, Kurento process crashes from time to time inside libnice: (multiple crashes point to the same lib entries)
Segmentation fault (thread 139888166897408, pid 1093)
Stack trace:
[nice_output_stream_new]
/usr/lib/x86_64-linux-gnu/libnice.so.10:0x28C74
[nice_output_stream_new]
/usr/lib/x86_64-linux-gnu/libnice.so.10:0x2B00A
[nice_output_stream_new]
/usr/lib/x86_64-linux-gnu/libnice.so.10:0x2BD09
[nice_agent_gather_candidates]
/usr/lib/x86_64-linux-gnu/libnice.so.10:0x13E8B
[nice_agent_gather_candidates]
/usr/lib/x86_64-linux-gnu/libnice.so.10:0x1431E
[g_simple_permission_new]
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0:0x75B21
[g_main_context_dispatch]
/lib/x86_64-linux-gnu/libglib-2.0.so.0:0x49EAA
[g_main_context_dispatch]
/lib/x86_64-linux-gnu/libglib-2.0.so.0:0x4A250
[g_main_loop_run]
/lib/x86_64-linux-gnu/libglib-2.0.so.0:0x4A572
[gst_nice_src_get_type]
/usr/lib/x86_64-linux-gnu/gstreamer-1.5/libgstnice15.so:0x2F99
[g_test_get_filename]
/lib/x86_64-linux-gnu/libglib-2.0.so.0:0x70965
[start_thread]
/lib/x86_64-linux-gnu/libpthread.so.0:0x8182
[clone]
/lib/x86_64-linux-gnu/libc.so.6:0xFA47D
At the same time, the most recent debug events recorded to log files are ice candidates pairings:
2016-03-17 08:43:12,095520 1093 [0x00007f3a407f0700] debug KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:214 newSelectedPairFull() <kmswebrtcendpoint43> New pair selected stream_id: 1, component_id: 1, local candidate: candidate:4 1 UDP 2013266431 222.250.42.158 55844 typ host, remot
e candidate: candidate:candidate:2003496507 1 UDP 25042687 222.250.42.151 51817 typ relay raddr 83.21.212.134 rport 51817
Application log shows that error happens at the moment after both SDP answers were generated, and just before startCommunication
command is going to be fired:
AppServer-0 Thu, 17 Mar 2016 08:43:11 GMT kms:CallMediaPipeline generateSdpOffer 16
AppServer-0 Thu, 17 Mar 2016 08:43:11 GMT kms:server pipeline:sdpAnswer:caller sdpReady
AppServer-0 Thu, 17 Mar 2016 08:43:11 GMT kms:CallMediaPipeline generateSdpOffer 15
AppServer-0 Thu, 17 Mar 2016 08:43:11 GMT kms:server pipeline:sdpAnswer:callee sdpReady
AppServer-0 reconnect to server 0 100 ff19ebc8-b114-495e-bf31-31f188f6ea8e
Full stack trace and log in can be seen in this gist
$ kurento-media-server -v
Version: 6.4.1~1.g3ffe480
Found modules:
Module: 'core' version '6.4.1~2.g4ed0cfc'
Module: 'elements' version '6.4.1~3.g8e842ad'
Module: 'filters' version '6.4.1~3.g06e2b4f'
# dpkg -l |grep -i libnice
ii libnice10:amd64 0.1.13.1~20160224182402.77.g7bbb87a.trusty amd64 ICE library (shared library)
I can reproduce this by using two Chrome browsers (Mac + Win) and by making around 10-15 calls (call out - hang - call out - hang ..)
If anyone could give any hints, suggestions or directions, I would really appreciate that. Thanks!
UPD: Problem solved after switching TURN server from reciprocate-turn-server 1.9.7
to coturn 4.4.2.1