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

Can't download files larger than 2Gb #27395

Closed
krot-mstu opened this issue Mar 15, 2017 · 5 comments
Closed

Can't download files larger than 2Gb #27395

krot-mstu opened this issue Mar 15, 2017 · 5 comments

Comments

@krot-mstu
Copy link

Actual behaviour

Owncloud client can't download files larger than 2Gb with error ": The downloaded file is empty despite the server announced it should have been Gb "
I also can't download file via GUI with the same error. It looks like core issue, not a bug in the client.

Steps to reproduce

Put file larger than 2Gb into the owncloud folder on the client_1
Wait while it is synced to the server. In this moment file is available on the server in the /owncloud/data/ folder
Client_2 on the another PC shows error like ": The downloaded file is empty despite the server announced it should have been Gb "

Server configuration

Operating system:
Linux raspberry 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l armv7l armv7l GNU/Linux

Web server:
Apache/2.4.18 (Ubuntu)

Database:
"dbtype": "sqlite3",
"version": "9.1.4.2",

PHP version:
php 7

ownCloud version:
ownCloud version": "9.1.4.2

Storage backend (external storage):
local disk
Client configuration

Client version:
ownCloud version 2.3.0

Operating system:
Linux PC 4.8.0-41-generic #44-Ubuntu SMP Fri Mar 3 15:27:17 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
(Ubuntu 16.10)

OS language:
En

Qt version used by client package (Linux only, see also Settings dialog):
Using Qt 4.8.7

Client package (From ownCloud or distro) (Linux only):
2.3.0 rev 832599

Installation path of client:
/usr/bin/owncloud
Logs

Client logfile: Output of owncloud --logwindow or owncloud --logfile log.txt
03-12 02:05:07:499 0x55e6b48dfce0 * Ignoring file "xxx/.xxx.ISO.~1e386f47"
03-12 02:05:07:505 0x55e6b48dfce0 * Ignoring file "xxxx/.xxx.vmdk.~5918e0c8"
....

Web server error log:
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T22:00:09+00:00
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T22:00:08+00:00
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T23:06:31+00:00
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T23:06:31+00:00
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T23:06:31+00:00
Error PHP stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78 2017-03-11T23:05:07+00:00

Server logfile: ownCloud log (data/owncloud.log):
{"reqId":"48dOA2XljQfDJM5+9dlU","remoteAddr":"xxx","app":"PHP","message":"stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78","level":3,"time":"2017-03-11T23:06:31+00:00","method":"GET","url":"/owncloud/remote.php/webdav/xxxx","user":"xxx"}
{"reqId":"5mntxR8vxaRghWxPXOdw","remoteAddr":"xxx","app":"PHP","message":"stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78","level":3,"time":"2017-03-11T23:06:32+00:00","method":"GET","url":"/owncloud/remote.php/webdav/xxxx","user":"xxx"}
{"reqId":"yY9yE0YAhNmdHw0I7232","remoteAddr":"192.168.1.226","app":"PHP","message":"stream_copy_to_stream() expects parameter 3 to be integer, string given at /var/www/owncloud/3rdparty/sabre/http/lib/Sapi.php#78","level":3,"time":"2017-03-11T23:06:32+00:00","method":"GET","url":"/owncloud/remote.php/webdav/vmware/xxx","user":"xxx"}
@ghost
Copy link

ghost commented Mar 15, 2017

You most likely need to switch to a 64bit platform as PHP on 32bit systems like the PI2 is not able to handle files larger then 2GB. This is a limit on your side which can't be circumvented by ownCloud.

The errors are most likely something which still needs to be gracefully handled by oC.

@hodyroff
Copy link
Contributor

You will need a server side 64bit OS/Platform, indeed. If you switch on a limit of 1.9GB in your ownCloud you will get a graceful error.
If somebody finds a way to make the error handling generally more elegant you would be more then welcome ;)

@ghost
Copy link

ghost commented Jun 13, 2017

@hodyroff Seems there is now sabre-http which ships with a workaround for 32bit systems to circuvment this issue: sabre-io/http#74, https://github.com/fruux/sabre-http/blob/master/CHANGELOG.md#423-2017-06-12

Another refs: #23788, sabre-io/http#77

@ghost
Copy link

ghost commented Jun 14, 2017

Created #28133 and requested to update sabre-http to 4.2.3

@lock
Copy link

lock bot commented Aug 1, 2019

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@lock lock bot locked as resolved and limited conversation to collaborators Aug 1, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants