open-webrtc-toolkit / owt-server

General server (streaming/conference/transcoding/anayltics) for OWT. (A.k.a. MediaServer)
https://01.org/open-webrtc-toolkit
Apache License 2.0
1.13k stars 369 forks source link

internalIO: segmentation fault #1152

Open thegobot opened 2 years ago

thegobot commented 2 years ago

OWT Server version currect (master from Jan 11) Docker & Ubuntu

how to reproduce the error:

start stream #id=source1
startStreamingOut(source1) #id=first  RTMP
startStreamingOut(source1) #id=two  RTMP

stopStreamingOut (first) //rest api

WorkingNode streaming-agent - exited on SIGSEGV

After my debugging (i'm used GDB), I found a place in the code where it crashes https://github.com/open-webrtc-toolkit/owt-server/blob/133ed88fc513fbac42b18637d040ad6b69750e90/source/core/owt_base/internal/TransportBase.cpp#L325

Called after

https://github.com/open-webrtc-toolkit/owt-server/blob/133ed88fc513fbac42b18637d040ad6b69750e90/source/core/owt_base/internal/InternalClient.cpp#L39

Any idea for a fix?

starwarfan commented 2 years ago

https://github.com/open-webrtc-toolkit/owt-server/blob/133ed88fc513fbac42b18637d040ad6b69750e90/source/core/owt_base/internal/TransportClient.cpp#L162 Add m_session.reset(); to have a try?

thegobot commented 2 years ago

https://github.com/open-webrtc-toolkit/owt-server/blob/133ed88fc513fbac42b18637d040ad6b69750e90/source/core/owt_base/internal/TransportClient.cpp#L162

Add m_session.reset(); to have a try?

No. I switched to the stable version

thegobot commented 1 year ago

Problem actual!

thegobot commented 1 year ago

If in streaming-agent

reuseNode=false
consumeNodeByRoom=false

the problem is solved

starwarfan commented 1 year ago

We cannot reproduce it on current version by following steps.

  1. start streaming, rmtp_url1, source1, get id1
  2. start streaming, rtmp_url2, source2, get id2
  3. stop streaming, id1
  4. stop streaming, id2