Skip to content
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

Channels no longer appear to be terminating connection when threadfin disconnects. #131

Closed
shorty789 opened this issue Aug 26, 2024 · 8 comments
Labels
bug Something isn't working waiting for feedback Waiting until author responds

Comments

@shorty789
Copy link

So this was tested last night, around 10 hours ago, though unfortunately I wasnt able to post this until now, I wont be able to test again until later on.

I have upgraded the container and i notice that the connections are not correctly terminating when threadfin disconnects, it seems however that the load balancing is working and the second time i attempt to watch a channel, it loads from the next playlist in line.

I have attached my logs from both Threadfin and the stream merger proxy.

Threadfin:

2024/08/26 00:14:37 [Threadfin] Channel Name: *****
2024/08/26 00:14:37 [Threadfin] Client User-Agent: Lavf/LIBAVFORMAT_VERSION
2024/08/26 00:14:37 [Threadfin] Streaming Status: Playlist: Merged Playlist - Tuner: 1 / 4
2024/08/26 00:14:37 [Threadfin] FFMPEG path: /usr/bin/ffmpeg
2024/08/26 00:14:37 [Threadfin] Streaming URL: http://:8080/
2024/08/26 00:14:37 [Threadfin] FFMPEG: Processing data
2024/08/26 00:14:37 [Threadfin] Streaming Status: Receive data from FFMPEG
2024/08/26 00:14:43 [Threadfin] Streaming Status: Buffering data from FFMPEG
2024/08/26 00:15:53 [Threadfin] Streaming Status: Client has terminated the connection
2024/08/26 00:15:53 [Threadfin] Streaming Status: Channel: ***** (Clients: 0)
2024/08/26 00:15:53 [Threadfin] Streaming Status: Channel: ***** - No client is using this channel anymore. Streaming Server connection has ended
2024/08/26 00:18:21 [Threadfin] Buffer: true [ffmpeg]
2024/08/26 00:18:21 [Threadfin] Buffer Size: 2048 KB
2024/08/26 00:18:21 [Threadfin] Channel Name: *****
2024/08/26 00:18:21 [Threadfin] Client User-Agent: Lavf/LIBAVFORMAT_VERSION
2024/08/26 00:18:21 [Threadfin] Streaming Status: Playlist: Merged Playlist - Tuner: 1 / 4
2024/08/26 00:18:21 [Threadfin] FFMPEG path: /usr/bin/ffmpeg
2024/08/26 00:18:21 [Threadfin] Streaming URL: http://:8080/
2024/08/26 00:18:21 [Threadfin] FFMPEG: Processing data
2024/08/26 00:18:21 [Threadfin] Streaming Status: Receive data from FFMPEG
2024/08/26 00:18:25 [Threadfin] Streaming Status: Buffering data from FFMPEG
2024/08/26 00:18:34 [Threadfin] Streaming Status: Client has terminated the connection
2024/08/26 00:18:34 [Threadfin] Streaming Status: Channel: ***** (Clients: 0)
2024/08/26 00:18:34 [Threadfin] Streaming Status: Channel: ***** - No client is using this channel anymore. Streaming Server connection has ended

M3U Merger:

2024/08/26 00:14:39 Received request from :39292 for URL: /stream/dWstZGF2ZQ==
2024/08/26 00:14:39 [DEBUG] Stream attempt 1 out of 5
2024/08/26 00:14:39 Current number of connections for M3U_1: 0
2024/08/26 00:14:40 [DEBUG] Successfully fetched stream from http://
2024/08/26 00:14:40 [DEBUG] Headers set for response: map[Access-Control-Allow-Origin:[] Cache-Control:[no-cache] Cf-Cache-Status:[DYNAMIC] Cf-Ray:[8b8f479b4ece0bb4-AMS] Connection:[keep-alive] Content-Type:[video/mp2t] Date:[Sun, 25 Aug 2024 23:14:40 GMT] Server:[cloudflare]]
2024/08/26 00:14:40 Proxying 172.16.252.3:39292 to http://
2024/08/26 00:14:40 Current number of connections for M3U_1: 1
2024/08/26 00:18:21 Received request from :46306 for URL: /stream/dWstZGF2ZQ==
2024/08/26 00:18:21 [DEBUG] Stream attempt 1 out of 5
2024/08/26 00:18:21 Current number of connections for M3U_2: 0
2024/08/26 00:18:21 [DEBUG] Successfully fetched stream from http://
2024/08/26 00:18:21 [DEBUG] Headers set for response: map[Access-Control-Allow-Origin:[
] Cache-Control:[no-cache] Cf-Cache-Status:[DYNAMIC] Cf-Ray:[8b8f4d0148fd7758-AMS] Connection:[keep-alive] Content-Type:[video/mp2t] Date:[Sun, 25 Aug 2024 23:18:21 GMT] Server:[cloudflare]]
2024/08/26 00:18:21 Proxying 172.16.252.3:46306 to http://
2024/08/26 00:18:21 Current number of connections for M3U_2: 1

@shorty789 shorty789 added the bug Something isn't working label Aug 26, 2024
@shorty789
Copy link
Author

I'll pass that looks incredibly suspicious.

Repository owner deleted a comment Aug 26, 2024
@sonroyaalmerol
Copy link
Owner

Can you remind me of your setup again? Is Threadfin between the proxy and the client or is it between the proxy and the provider server?

Is the 2nd attempt still using Threadfin? Does that not terminate as well?

@shorty789
Copy link
Author

So the setup is currently client>threadfin>proxy>internet for me. And it seems that whenever threadfin disconnects, it doesn't register so on the proxy, this wasn't always the case though.

@sonroyaalmerol
Copy link
Owner

Hmmmmm. What was the last working version of the proxy you've tried? Did threadfin update since the last time it was working for you?

@shorty789
Copy link
Author

after the initial update that required redis where the container wouldnt launch, i reverted for a while to a cached image on my server, i only got round to updating again last night as life got in the way, so admittedly I was using an outdated version from before redis was a requirement.

@sonroyaalmerol
Copy link
Owner

sonroyaalmerol commented Aug 26, 2024

Is it possible for it to be caused by a Threadfin update instead of the proxy update? I haven't really changed much in terms of the logic of detecting a disconnection. Just wanted to make sure before I actually dig more into this.

The reason I'm asking this is because I did see a Threadfin commit that might've changed the way they buffer the streams when I skimmed through their changelogs.

@sonroyaalmerol sonroyaalmerol added the waiting for feedback Waiting until author responds label Aug 30, 2024
@jbumgard
Copy link

jbumgard commented Oct 7, 2024

i'm having the same problem. Did yall find a resolution?

I'm same settup as mentioned above.
client>threadfin>proxy>internet

i also tried VLC Nework Stream > proxy> internet and i get the same exact results.

@sonroyaalmerol
Copy link
Owner

This issue should be resolved in version 0.15.2. Feel free to re-open otherwise

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working waiting for feedback Waiting until author responds
Projects
None yet
Development

No branches or pull requests

4 participants
@shorty789 @sonroyaalmerol @jbumgard and others