Client Sync Issue: If file changes during sync, client cannot sync anymore [SOLVED]

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:

TLDR; If sync client is crashing during bulk uploads, check if bandwidth is enabled in the client, setting the bandwidth to “No Limit” solves the issue. If you need bandwidth limits, try disabling bulk uploads in the config file.

Issue:
When a file changes during sync, the sync fails completely, I cannot sync the files to the server again. This freezes the Ubuntu desktop client, I need to quit and restart it again. It is the same with Windows client, but I can use force sync.
The only way to restore the sync function I found so far is:

  1. move the files out of the folder
  2. sync,
  3. put them back in the folder
  4. sync again

Edit 1: Upon some more search I found a lot of people are facing different issues I found the common error under this problem is “Sabre\DAV\Exception: Unknown error while seeking content”. Following this suggestion on github, downgrading the client to 3.3.5 fixed it for me.


Edit 2: Apparently it’s a reported bug (see this). Upon further reading I found out that, the issue is caused by enabling upload and download bandwidth limits in the client. Setting the limits to “No limit” is one way to avoid this bug (here). If limits are needed disabling bulk upload is another way to avoid the issue (here).


Nextcloud version (eg, 20.0.5): 25.0.1.1
Operating system and version (eg, Ubuntu 20.04): Ubuntu 22.04.1
Apache or nginx version (eg, Apache 2.4.25): Apache 2.4.52
PHP version (eg, 7.4): 8.1

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

Steps to replicate it:

  1. Start the sync client
  2. Change a file during sync

The output of your Nextcloud log in Admin > Logging:

{"reqId":"c6g9s1nvEG3ChMo3aK7b","level":3,"time":"2022-11-16T18:58:44+00:00","remoteAddr":"[REMOVED]","user":"[REMOVED]","app":"webdav","method":"POST","url":"/remote.php/dav/bulk","message":"Unknown error while seeking content","userAgent":"Mozilla/5.0 (Linux) mirall/3.6.2-20221111.185211.2a703f26b-1.0~jammy1 (Nextcloud, ubuntu-5.15.0-52-generic ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"25.0.1.1","exception":{"Exception":"Sabre\\DAV\\Exception","Message":"Unknown error while seeking content","Code":500,"Trace":[{"file":"/var/www/nextcloud/apps/dav/lib/BulkUpload/MultipartRequestParser.php","line":129,"function":"isAt","class":"OCA\\DAV\\BulkUpload\\MultipartRequestParser","type":"->"},{"file":"/var/www/nextcloud/apps/dav/lib/BulkUpload/BulkUploadPlugin.php","line":71,"function":"isAtLastBoundary","class":"OCA\\DAV\\BulkUpload\\MultipartRequestParser","type":"->"},{"file":"/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPost","class":"OCA\\DAV\\BulkUpload\\BulkUploadPlugin","type":"->"},{"file":"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/apps/dav/lib/Server.php","line":360,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/remote.php","line":171,"args":["/var/www/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/var/www/nextcloud/apps/dav/lib/BulkUpload/MultipartRequestParser.php","Line":111,"message":"Unknown error while seeking content","exception":[],"CustomMessage":"Unknown error while seeking content"},"id":"637539cd0d84a"}

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

<?php
$CONFIG = array (
  'instanceid' => '[REMOVED]',
  'passwordsalt' => '[REMOVED]',
  'secret' => '[REMOVED]',
  'trusted_domains' =>
  array (
    0 => '[REMOVED]',
    1 => '[REMOVED]',
  ),
  'datadirectory' => '[REMOVED]',
  'overwrite.cli.url' => [REMOVED]',
  'version' => '25.0.1.1',
  'dbtype' => 'mysql',
  'dbname' => '[REMOVED]',
  'dbhost' => 'localhost',
  'dbport' => '3306',
  'dbtableprefix' => 'oc_',
  'dbuser' => '[REMOVED]',
  'dbpassword' => '[REMOVED]',
  'mysql.utf8mb4' => true,
  'default_language' => 'en',
  'default_locale' => 'en_US',
  'default_phone_region' => 'US',
  'defaultapp' => 'files',
  'knowledgebase' => 'true',
  'allow_user_to_change_display_name' => true,
  'installed' => true,
  'maintenance' => false,
  'loglevel' => 0,
  'updater.release.channel' => 'stable',
  'theme' => '',
  'overwritehost' => '[REMOVED]',
  'overwriteprotocol' => 'https',
  'overwritewebroot' => '/',
  'htaccess.RewriteBase' => '/',
  'allow_local_remote_servers' => true,
  'proxy' => '',
  'trusted_proxies' =>
  array (
    0 => '[REMOVED]',
    1 => '[REMOVED]',
  ),
  'login_form_autocomplete' => false,
  'filelocking.enabled' => true,
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'memcache.local' => '\\OC\\Memcache\\Redis',
  'redis' =>
  array (
    'host' => '127.0.0.1',
    'port' => 6379,
    'timeout' => 0,
  ),
  'twofactor_enforced' => 'true',
  'twofactor_enforced_groups' =>
  array (
  ),
  'twofactor_enforced_excluded_groups' =>
  array (
  ),
  'ldapIgnoreNamingRules' => false,
  'ldapProviderFactory' => 'OCA\\User_LDAP\\LDAPProviderFactory',
  'app_install_overwrite' =>
  array (
  ),
  'data-fingerprint' => '[REMOVED]',
  'appcodechecker' => true,
  'preview_max_x' => 512,
  'preview_max_y' => 512,
  'preview_max_scale_factor' => 1,
  'encryption.legacy_format_support' => false,
  'encryption.key_storage_migrated' => false,
  'mail_smtpmode' => 'smtp',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_sendmailmode' => 'smtp',
  'mail_smtpauth' => 1,
  'mail_smtpsecure' => 'ssl',
  'mail_from_address' => '[REMOVED]',
  'mail_domain' => '[REMOVED]',
  'mail_smtphost' => '[REMOVED]',
  'mail_smtpport' => '465',
  'mail_smtpname' => '[REMOVED]',
  'mail_smtppassword' => '[REMOVED]',
);

The output of your Apache/nginx/system log in /var/log/____: error log

[Wed Nov 16 13:58:44.634375 2022] [proxy_fcgi:error] [pid 2053] (70007)The timeout specified has expired: [client [REMOVED]:50012] AH01075: Error dispatching request to : (reading input brigade)

Finally the log on the client side:
pastebin