Owncloud file transfer VERY slow (was fast once upon a time) and lots of errors in logs

81x-eol
help

#1

Please help us by providing the following info. Before posting please also check the pinned "Known issues" threads and make sure that you're running the latest available version for your oC release: https://owncloud.org/changelog/

Steps to reproduce
1. Upload files from the mobile app using LAN wifi
2.Observe excruciating slow speed (1 hour for a 50Mb file)
3. Observe tons of errors in logs

Expected behaviour
Tell us what should happen
Transfer speed should be as fast as Wifi can handle, it used to be like that on my setup.

Actual behaviour
Transfer speed is very slow and tons of errors in oC logs (see below)

Server configuration
Operating system: CentOS 7 (up to date)
Web server: Apache Server version: Apache/2.4.6 (CentOS)
Database: Ver 15.1 Distrib 5.5.50-MariaDB, for Linux (x86_64) using readline 5.1
PHP version:PHP 5.4.16 (cli) (built: Aug 11 2016 21:24:59) / Zend Engine v2.4.0
ownCloud version (see ownCloud admin page): 8.1.9
Updated from an older ownCloud or fresh install: fresh install (kept up to date with OS package mgr YUM)
Special configuration (external storage, external authentication, reverse proxy, server-side-encryption): None

ownCloud log (data/owncloud.log)

 webdav 	Exception: {"Message":"HTTP\/1.1 404 File with name VID_20170102_143951.mp4 could not be located","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(78): OC\\Connector\\Sabre\\ObjectTree->getNodeForPath('VID_20170102_14...', 0)\n#1 [internal function]: Sabre\\DAV\\CorePlugin->httpGet(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:GET', Array)\n#4 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(253): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 [internal function]: Sabre\\DAV\\CorePlugin->httpHead(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:HEAD', Array)\n#8 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#9 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#10 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#11 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/objecttree.php","Line":159} 	2017-01-10T07:11:14-05:00
Error 	PHP 	Cannot modify header information - headers already sent by (output started at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php:70) at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php#58 	2017-01-10T07:11:14-05:00
Fatal 	webdav 	Exception: {"Message":"HTTP\/1.1 400 expected filesize 1024000 got 323584","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/file.php(100): OC\\Connector\\Sabre\\File->createFileChunked(Resource id #239)\n#1 \/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/directory.php(113): OC\\Connector\\Sabre\\File->put(Resource id #239)\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(1053): OC\\Connector\\Sabre\\Directory->createFile('VID_20170102_14...', Resource id #239)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(513): Sabre\\DAV\\Server->createFile('VID_20170102_14...', Resource id #239, NULL)\n#4 [internal function]: Sabre\\DAV\\CorePlugin->httpPut(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:PUT', Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#8 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#9 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#10 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/file.php","Line":357} 	2017-01-10T07:08:47-05:00
Debug	webdav	Exception: {"Message":"HTTP\/1.1 404 File with name VID_20170102_143910.mp4 could not be located","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(78): OC\\Connector\\Sabre\\ObjectTree->getNodeForPath('VID_20170102_14...', 0)\n#1 [internal function]: Sabre\\DAV\\CorePlugin->httpGet(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:GET', Array)\n#4 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(253): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 [internal function]: Sabre\\DAV\\CorePlugin->httpHead(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:HEAD', Array)\n#8 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#9 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#10 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#11 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/objecttree.php","Line":159}	2017-01-10T07:03:31-05:00
Error	PHP	Cannot modify header information - headers already sent by (output started at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php:70) at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php#58	2017-01-10T07:03:30-05:00
Debug	webdav	Exception: {"Message":"HTTP\/1.1 404 File with name IMG_20170101_195301.jpg could not be located","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(78): OC\\Connector\\Sabre\\ObjectTree->getNodeForPath('IMG_20170101_19...', 0)\n#1 [internal function]: Sabre\\DAV\\CorePlugin->httpGet(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:GET', Array)\n#4 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(253): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 [internal function]: Sabre\\DAV\\CorePlugin->httpHead(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:HEAD', Array)\n#8 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#9 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#10 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#11 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/objecttree.php","Line":159}	2017-01-10T07:02:05-05:00
Error	PHP	Cannot modify header information - headers already sent by (output started at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php:70) at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php#58	2017-01-10T07:02:04-05:00
Debug	webdav	Exception: {"Message":"HTTP\/1.1 404 File with name IMG_20170101_191108.jpg could not be located","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(78): OC\\Connector\\Sabre\\ObjectTree->getNodeForPath('IMG_20170101_19...', 0)\n#1 [internal function]: Sabre\\DAV\\CorePlugin->httpGet(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:GET', Array)\n#4 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(253): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 [internal function]: Sabre\\DAV\\CorePlugin->httpHead(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:HEAD', Array)\n#8 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#9 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#10 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#11 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/objecttree.php","Line":159}	2017-01-10T07:02:02-05:00
Error	PHP	Cannot modify header information - headers already sent by (output started at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php:70) at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php#58	2017-01-10T07:02:02-05:00
Debug	webdav	Exception: {"Message":"HTTP\/1.1 404 File with name IMG_20170101_191048.jpg could not be located","Code":0,"Trace":"#0 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(78): OC\\Connector\\Sabre\\ObjectTree->getNodeForPath('IMG_20170101_19...', 0)\n#1 [internal function]: Sabre\\DAV\\CorePlugin->httpGet(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#2 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#3 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:GET', Array)\n#4 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(253): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#5 [internal function]: Sabre\\DAV\\CorePlugin->httpHead(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#6 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#7 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(469): Sabre\\Event\\EventEmitter->emit('method:HEAD', Array)\n#8 \/var\/www\/html\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(254): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#9 \/var\/www\/html\/owncloud\/apps\/files\/appinfo\/remote.php(83): Sabre\\DAV\\Server->exec()\n#10 \/var\/www\/html\/owncloud\/remote.php(132): require_once('\/var\/www\/html\/o...')\n#11 {main}","File":"\/var\/www\/html\/owncloud\/lib\/private\/connector\/sabre\/objecttree.php","Line":159}	2017-01-10T07:01:59-05:00
Error	PHP	Cannot modify header information - headers already sent by (output started at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php:70) at /var/www/html/owncloud/3rdparty/sabre/http/lib/Sapi.php#58	2017-01-10T07:01:58-05:00

And it goes on and on...

Integrity status for oC9+

Login as admin user into your ownCloud and access
http://example.com/index.php/settings/integrity/failed
Cannot access this page it seems not to exist on 8.1.9 (I am brought back to my admin home page)

This issue started about 3 months ago. Prior to that file transfers were instantaneous on LAN using wifi. I am not aware of such issues (or at least speed is OK) using wired computers but using my android phone I experience these slow speeds. Once I noticed that I was still logged in into my oC account on my desktop, and was trying to upload files from my phone and it was very slow. I thought to logout from my desktop and noticed an immediate increase in speed. Perhaps only a coincidence?


#2

Do you know this file and what has happened to it? Is there a link to in in the oc_filecache-table?


#3

When I tried to upload this file to my cloud, on the phone the oC app tries for several minutes (about 1% per minute) then after 20% or so stops and says "Connection error".

Today I thought running an update of Centos via YUM, and rebooting the VM. I just tried re-uploading the videos and it worked real fast! So it must me something related to uptime on the server (PHP memory issues?)

FYI the DB is running on a remote (another VM) Centos server so I know the issue is not related to the DB end.

BTW I did not run the query on oc_filecache table yet but looking at it with PHPMyadmin, the table is almost 18,000 entries and 10MB...


#4

Yes, that table can be a bit larger.

Hard to say like that. Normally you should be able to spot such things when you monitor the processes running when the system is slow. Can also a cronjob hanging, ...


#5

Well.. if this happens again I will make sure to document it here! Thanks for the replies!


#6

OC 8.1 is still supported (latest is 8.1.11! -> https://owncloud.org/changelog/#latest8.1), however ownCloud improves with each release (new features, better performance). 8.2 should be pretty save to upgrade, even 9.0 should be very stable now. PHP 7.0 brings a much faster web-interface. Don't forget to make a backup since there is no way to downgrade.


#7

Yeah but the centos repo is still using 8.1.9... Unless the repo contains a more up to date version of oC, I would rather just stay with 8.1.9 for fear of hitting a bug with centos or some sort of incompatibility.


#8

https://owncloud.org/install/#edition -> Packages has repositories for CentOS containing ownCloud versions up to 9.1.3


#9

Woahhhhh I may be in trouble. For some reason I cannot recall, I ended up using this repo to install oC on Centos:

http://download.opensuse.org/repositories/isv:/ownCloud:/community/CentOS_CentOS-7/

Probably because at that time, there was nothing on oC's wiki, and a Google search yielded me to use the opensuse repo... Not good.

Anyways, how do I migrate to the official oC repo? Do I just uninstall oC, delete the repo, add the official repo and reinstall oC? What about my optimizations and fine tuning? I mainly used the wiki page about "Server Tuning & Performance Tips"..


#10

This is the old, official repository. They changed the repository starting from 8.2 to an own infrastructure as documented at various places.

Instructions how to go from 8.1.x to 9.1.x are available here:

https://doc.owncloud.org/server/latest/admin_manual/maintenance/package_upgrade.html#upgrading-across-skipped-releases