You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On a system with slow disk io (for whatever reason) large uploads cannot be finished since TempManager is cleaning the directory before the upload was completed. The chunks are uploaded completely and the temporary file in the tmp directory has got the correct size.
In my setup I have a disk read of 20M/sec which would allow to read ~72G in one hour.
Before TempManager is cleaning, the tmp directory looks like this: -rw------- 1 apache apache 0 11. Sep 13:51 oc_tmp_07t3vr -rw------- 1 apache apache 102400000000 11. Sep 14:11 oc_tmp_07t3vr-.bin -rw------- 1 apache apache 6553600 11. Sep 13:51 phppEsIzF
So the with first cron at 00 the files oc_tmp_07t3vr and phppEsIzF were removed and with a second at 15 the last file oc_tmp_07t3vr-.bin was removed as well.
lsof and iotopshow, that httpd is still accessing the .bin-file
Since the upload process still was in progress, ownCloud threw the obvious exception that the file could not be opened:
This issue should not cover the slow io issue, but the fact, that TempManager is arbitrarily removing files using a hard coded value, without any check, if a file is in use.
The text was updated successfully, but these errors were encountered:
Hi @cortho, how would I be able to reproduce the issue?
Does the upload just need to take longer than 60 minutes? Or is it only in combination with files_primary_s3?
The upload was basically finished, as I stated in my OP. You would have to throttle hd throughput so assembling the chunks would take more than an hour.
Anyway, I think the issue is clear. There is an arbitrary 1h timeout AND files are removed, even when they are in use
ownCloud 10.2.0.4
fresh install
On a system with slow disk io (for whatever reason) large uploads cannot be finished since TempManager is cleaning the directory before the upload was completed. The chunks are uploaded completely and the temporary file in the tmp directory has got the correct size.
In my setup I have a disk read of 20M/sec which would allow to read ~72G in one hour.
Before TempManager is cleaning, the tmp directory looks like this:
-rw------- 1 apache apache 0 11. Sep 13:51 oc_tmp_07t3vr
-rw------- 1 apache apache 102400000000 11. Sep 14:11 oc_tmp_07t3vr-.bin
-rw------- 1 apache apache 6553600 11. Sep 13:51 phppEsIzF
Since there is a hard coded timeout of 3600 seconds at https://github.com/owncloud/core/blob/master/lib/private/TempManager.php#L186, the cleanup mechanism is running, even when the upload was not yet completed.
So the with first cron at 00 the files
oc_tmp_07t3vr
andphppEsIzF
were removed and with a second at 15 the last fileoc_tmp_07t3vr-.bin
was removed as well.lsof
andiotop
show, thathttpd
is still accessing the .bin-fileSince the upload process still was in progress, ownCloud threw the obvious exception that the file could not be opened:
This issue should not cover the slow io issue, but the fact, that TempManager is arbitrarily removing files using a hard coded value, without any check, if a file is in use.
The text was updated successfully, but these errors were encountered: