Skip to content

Chunked upload not working / chunkSize setting ignored #1152

@Whissi

Description

@Whissi

Expected behaviour

I should be able to upload files >10MB using Desktop client.

Actual behaviour

I am unable to do that. Server reports too large body,

Steps to reproduce

  1. Make sure your webserver is limiting max body size for ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) to ~12MB which should be enough according to documentation for client for web.
  2. Make sure that you can upload files a 1GB file via web and confirm chunked transfer in browser developer tool's network tab,
  3. Put the same file into your folder on your local disk you synchronize with NextCloud client

Client configuration

Client version: 2.5.0, 2.5.1, 2.5.2 is failing

Operating system: Windows 7/10

OS language: English

Installation path of client: C:\Program Files (x86)\Nextcloud\nextcloud.exe

Server configuration

Operating system: Gentoo GNU/Linux

Web server: nginx/1.15.9

PHP version: 7.3.3

Nextcloud version: 15.0.5

Storage backend (external storage): Server disk, no extern storage

Logs

  1. Client logfile:
#=#=#=# Syncrun started 2019-03-19T20:04:30Z
#=#=#=#=# Propagation starts 2019-03-19T20:04:31Z (last step: 1638 msec, total: 1638 msec)
||synctest//test1.dat|INST_NEW|Up|1552998581||1030087344||2|Error transferring https://example.org/remote.php/dav/uploads/myusername/3478485999/00000001 - server replied: |413|0|0||||
#=#=#=# Syncrun finished 2019-03-19T20:04:43Z (last step: 11376 msec, total: 13015 msec)
  1. Web server error log:
2019/03/19 21:04:42 [error] 7461#7461: *179339 client intended to send too large body: 42321239 bytes, client: 1.2.3.4, server: example.org, request: "PUT /remote.php/dav/uploads/myusername/3478485999/00000001 HTTP/2.0", host: "example.org"
  1. Server logfile: nextcloud log (data/nextcloud.log): No errors logged - normal because webserver blocked request.
  • Because desktop client is using same endpoint like web browser (/remote.php/dav...) I can say for sure that my server configuration is working as expect.
  • According to documentation, client should use 5MB chunks by default - that's not the case or I wouldn't see that error.
  • I tried to add chunkSize=10485760 to [General] in my nextcloud.cfg on the Desktop but it looks like the client is ignoring that setting.
  • It was working when I started with Nextcloud (~v12). Server configuration, aside regular webserver/PHP update, wasn't touched. So it's either a client software problem or a server software issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugneeds infoUser feedback is required. Will be closed if not responded.stale

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions