-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
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
SOURCE: The SRS server crashed after stopping the stream. #671
Comments
Hello, I have already identified the cause of the problem. After the streaming client stops pulling the stream for 30 seconds, the program will erase the "source" resource in the pool without checking whether the "publish_edge" of that source is still pushing the stream. I have made modifications to the SrsSource::expired interface in the srs_app_source.cpp file, and the modified version is as follows.
}
|
There is indeed such a problem with srs2.0, it seems that adding a judgment on whether publish_edge is currently streaming can solve it.
|
We will take a look. The logic has become more complex after adding Source cleaning.
|
SRS2 has removed the Source cleaning, resulting in higher memory usage, but it will not crash because of this.
|
Up to #1579, plan to use hot upgrade to solve the Source cleaning issue.
|
SRS version:
[root@localhost trunk]# ./objs/srs -v
2.0.219
Environment:
IP address: 172.16.198.129
Two SRS server programs, one is publish_edge, the other is origin
Configuration file for publish_edge:
Configuration file for origin:
Startup command:
Specific operations:
Crash core file stack trace:
TRANS_BY_GPT3
The text was updated successfully, but these errors were encountered: