Upload of larger files fails

Support intro

Sorry to hear you’re facing problems :slightly_frowning_face:

help.nextcloud.com is for home/non-enterprise users. If you’re running a business, paid support can be accessed via portal.nextcloud.com where we can ensure your business keeps running smoothly.

In order to help you as quickly as possible, before clicking Create Topic please provide as much of the below as you can. Feel free to use a pastebin service for logs, otherwise either indent short log examples with four spaces:

example

Or for longer, use three backticks above and below the code snippet:

longer
example
here

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can :heart:

Nextcloud version (eg, 20.0.5): 28.0.1
Operating system and version (eg, Ubuntu 20.04): Linuxserver Docker @ Unraid
Apache or nginx version (eg, Apache 2.4.25): nginx 1.24.0
PHP version (eg, 7.4): 8.2

The issue you are facing:

Is this the first time you’ve seen this error? (Y/N): Yes

Steps to replicate it:

  1. Login to Webinterface
  2. Upload a file > 6 GB

=> The upload is finished to 100% and stored temporarily in
/data/Username/upload/web-file-upload-4fb801ecf98d6dea

During copying from this temporary folder to destination folder, the copy process is terminated after 5-6 GB with the error messages below from webdav (why webdav??)

Already adapted settings:
nextcloud.ini: (php settings)

memory_limit=8G
upload_max_filesize=100G
post_max_size=100G
max_input_time=86400
max_execution_time=86400
output_buffering=0
always_populate_raw_post_data=-1

nginx default.conf:

fastcgi_read_timeout 3600;
fastcgi_send_timeout 3600;
fastcgi_connect_timeout 3600;
proxy_connect_timeout 3600;
proxy_send_timeout 3600;
proxy_read_timeout 3600;
send_timeout 3600;

The output of your Nextcloud log in Admin > Logging:

ServiceUnavailable
Datei konnte nicht geöffnet werden
/config/www/nextcloud/apps/dav/lib/Upload/AssemblyStream.php
Zeile 294
OCA\DAV\Connector\Sabre\File->get()
/config/www/nextcloud/apps/dav/lib/Upload/AssemblyStream.php
Zeile 164
OCA\DAV\Upload\AssemblyStream->getStream()
OCA\DAV\Upload\AssemblyStream->stream_read()
/config/www/nextcloud/apps/files_external/3rdparty/icewind/streams/src/Wrapper.php
Zeile 55
undefinedundefinedfread()
/config/www/nextcloud/apps/files_external/3rdparty/icewind/streams/src/CallbackWrapper.php
Zeile 96
Icewind\Streams\Wrapper->stream_read()
Icewind\Streams\CallbackWrapper->stream_read()
/app/www/public/lib/private/Files/Storage/Local.php
Zeile 335
undefinedundefinedfile_put_contents()
/app/www/public/lib/private/Files/Storage/Local.php
Zeile 643
OC\Files\Storage\Local->file_put_contents()
/app/www/public/lib/private/Files/Storage/Wrapper/Wrapper.php
Zeile 644
OC\Files\Storage\Local->writeStream()
/config/www/nextcloud/apps/dav/lib/Connector/Sabre/File.php
Zeile 250
OC\Files\Storage\Wrapper\Wrapper->writeStream()
/config/www/nextcloud/apps/dav/lib/Connector/Sabre/Directory.php
Zeile 148
OCA\DAV\Connector\Sabre\File->put()
/app/www/public/3rdparty/sabre/dav/lib/DAV/Tree.php
Zeile 313
OCA\DAV\Connector\Sabre\Directory->createFile(
  "*** sensitive parameters replaced ***"
)
/app/www/public/3rdparty/sabre/dav/lib/DAV/Tree.php
Zeile 139
Sabre\DAV\Tree->copyNode()
/app/www/public/3rdparty/sabre/dav/lib/DAV/Tree.php
Zeile 169
Sabre\DAV\Tree->copy()
/config/www/nextcloud/apps/dav/lib/Upload/ChunkingPlugin.php
Zeile 94
Sabre\DAV\Tree->move()
/config/www/nextcloud/apps/dav/lib/Upload/ChunkingPlugin.php
Zeile 76
OCA\DAV\Upload\ChunkingPlugin->performMove()
/app/www/public/3rdparty/sabre/event/lib/WildcardEmitterTrait.php
Zeile 89
OCA\DAV\Upload\ChunkingPlugin->beforeMove()
/app/www/public/3rdparty/sabre/dav/lib/DAV/CorePlugin.php
Zeile 603
Sabre\DAV\Server->emit()
/app/www/public/3rdparty/sabre/event/lib/WildcardEmitterTrait.php
Zeile 89
Sabre\DAV\CorePlugin->httpMove()
/app/www/public/3rdparty/sabre/dav/lib/DAV/Server.php
Zeile 472
Sabre\DAV\Server->emit()
/app/www/public/3rdparty/sabre/dav/lib/DAV/Server.php
Zeile 253
Sabre\DAV\Server->invokeMethod()
/app/www/public/3rdparty/sabre/dav/lib/DAV/Server.php
Zeile 321
Sabre\DAV\Server->start()
/config/www/nextcloud/apps/dav/lib/Server.php
Zeile 370
Sabre\DAV\Server->exec()
/config/www/nextcloud/apps/dav/appinfo/v2/remote.php
Zeile 35
OCA\DAV\Server->exec()
/app/www/public/remote.php
Zeile 172
undefinedundefinedrequire_once(
  "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php"
)

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'datadirectory' => '/data',
  'instanceid' => '<myinstanceid>',
  'passwordsalt' => '<mypassword>',
  'secret' => '<mysecret>',
  'trusted_domains' => 
  array (
    1 => 'mydomain.com',
  ),
  'dbtype' => 'pgsql',
  'version' => '28.0.1.1',
  'overwrite.cli.url' => 'https://terra.local:8008',
  'dbname' => 'nextcloud',
  'dbhost' => 'db',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => '<username>',
  'dbpassword' => '<password>',
  'installed' => true,
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'filelocking.enabled' => true,
  'memcache.locking' => '\\OC\\Memcache\\APCu',
  'upgrade.disable-web' => true,
  'default_phone_region' => 'DE',
);

Can you post the raw stack trace?