Minutes of disk read after streaming video!

Nextcloud version (eg, 20.0.5): 23.0.3
Operating system and version (eg, Ubuntu 20.04): Debian 11
Apache or nginx version (eg, Apache 2.4.25): nginx 1.18.0
PHP version (eg, 7.4): php8.0

Steps to replicate it:

  1. Enable Video Streaming
  2. Watch a video.
  3. Stop Watching a video.

Streaming video, of course, makes Disk Read. But this task should be ended when no one is streaming it. I think Nextcloud remains reading the file after users quit watching the video.
This behavior makes the site sluggish for every user. Is there any options to prevent it?

Hi, this should be fixed with Properly cancel and reset ongoing streams when unmounting by skjnldsv · Pull Request #1206 · nextcloud/viewer · GitHub and the next releases of NC22 - NC24.

Hi, I’ve updated my instance to 23.0.4, and the problem is still there.
Is it related to PHP settings?

You may need to clear the browser cache after the update…

Hi,

alo, on server side, php-fpm must be stop/started not only restarted in order to kill/recreate some cache…

I have tried these things:

  1. Removing browser cache
  2. Visiting my cloud on newly installed virtual machine
  3. Flushing Redis cache

And these made no change…
If there were misconfigures in my system, I’d like to get a little clue about it.

When streaming a video, Nextcloud reads the whole video file. No matter what span of the video the user requested to buffer, no matter whether the user keeps watching or not.

If a user starts playing 30GB of a video file, 30GB of disk load just occurs. For me hosting the cloud for my video production, it’s hard to consider sharing large video files for an unspecified number of client members.

In my case, this symptom persists for every update up to 24.0.4. I think that the cause is some misconfigure in my installation. Because it’s hard to believe this critical problem comes to every instance.

I’d be thankful if anybody gave me a clue to figure out the cause.

Sorry for my bad and bulky english.

I am facing the same problem, too.
I am hosting some large video files(50GB+), and the disk keep reading for hours if I do open+seek+close.
I can see the process “php-fpm8.0” running and take a lot of resource.
Things return back if I restart the service “php-fpm8.0”.

The small files doesn’t produce the problem, because the reading ends quickly.

How do you solve this problem? @proxima235

I’m using 24.0.7

It can be fixed by modifing some code in
/3rdparty/sabre/http/lib/Sapi.php.

You can find the solution here.

It seems to be inserting a condition checking whether the user connection is aborted or not.

After this modification, I’ve get my nextcloud properly catches the ‘connection aborted’ situation that includes ‘closing video player’, ‘cancelling download’.

But I’m still waiting for the official realease for more stable and verified fix.

1 Like