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

[Bug]: Nextcloud desktop client (macOS) becomes unresponsive at 100% CPU #7377

Open
5 of 8 tasks
danrex opened this issue Oct 21, 2024 · 14 comments
Open
5 of 8 tasks

Comments

@danrex
Copy link

danrex commented Oct 21, 2024

⚠️ Before submitting, please verify the following: ⚠️

Bug description

The desktop client starts syncing and then becomes unresponsive quickly. If I pause the sync right after the client starts then it does not crash.

Steps to reproduce

Unknown

Expected behavior

Desktop client should sync the files and stay responsive.

Which files are affected by this bug

I did not manage to deterministically pinpoint it to a specific file.

Operating system

macOS

Which version of the operating system you are running.

macOS Sonoma 14.7 (23H124)

Package

Official macOS 12+ universal pkg

Nextcloud Server version

29.0.7

Nextcloud Desktop Client version

3.14.1

Is this bug present after an update or on a fresh install?

Updated from a minor version (ex. 3.4.2 to 3.4.4)

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

Are you using an external user-backend?

  • Default internal user-backend
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Nextcloud Server logs

{"reqId":"[REDACTED]","level":0,"time":"2024-10-21T17:23:38+00:00","remoteAddr":"[REDACTED]","user":"[REDACTED]","app":"text","method":"POST","url":"/remote.php/dav/bulk","message":"Reset document skipped in BeforeNodeWrittenEvent","userAgent":"Mozilla/5.0 (Macintosh) mirall/3.14.1daily (Nextcloud, macos-23.6.0 ClientArchitecture: arm64 OsArchitecture: arm64)","version":"29.0.7.1","exception":{"Exception":"OCP\Files\NotFoundException","Message":"","Code":0,"Trace":[{"file":"/usr/local/nextcloud/apps/text/lib/Listeners/BeforeNodeWrittenListener.php","line":60,"function":"getId","class":"OC\Files\Node\NonExistingFile","type":"->"},{"file":"/usr/local/nextcloud/lib/private/EventDispatcher/ServiceEventListener.php","line":86,"function":"handle","class":"OCA\Text\Listeners\BeforeNodeWrittenListener","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php","line":230,"function":"__invoke","class":"OC\EventDispatcher\ServiceEventListener","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php","line":59,"function":"callListeners","class":"Symfony\Component\EventDispatcher\EventDispatcher","type":"->"},{"file":"/usr/local/nextcloud/lib/private/EventDispatcher/EventDispatcher.php","line":86,"function":"dispatch","class":"Symfony\Component\EventDispatcher\EventDispatcher","type":"->"},{"file":"/usr/local/nextcloud/lib/private/EventDispatcher/EventDispatcher.php","line":98,"function":"dispatch","class":"OC\EventDispatcher\EventDispatcher","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/HookConnector.php","line":93,"function":"dispatchTyped","class":"OC\EventDispatcher\EventDispatcher","type":"->"},{"file":"/usr/local/nextcloud/lib/private/legacy/OC_Hook.php","line":105,"function":"write","class":"OC\Files\Node\HookConnector","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1287,"function":"emit","class":"OC_Hook","type":"::"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1154,"function":"runHooks","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":683,"function":"basicOperation","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/Folder.php","line":192,"function":"file_put_contents","class":"OC\Files\View","type":"->"},{"function":"newFile","class":"OC\Files\Node\Folder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":84,"function":"call_user_func_array"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":463,"function":"__call","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/BulkUpload/BulkUploadPlugin.php","line":92,"function":"newFile","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPost","class":"OCA\DAV\BulkUpload\BulkUploadPlugin","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/Server.php","line":383,"function":"exec","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/remote.php","line":172,"args":["/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/usr/local/nextcloud/lib/private/Files/Node/NonExistingFile.php","Line":52,"message":"Reset document skipped in BeforeNodeWrittenEvent","exception":{},"CustomMessage":"Reset document skipped in BeforeNodeWrittenEvent"}}
{"reqId":"[REDACTED]","level":0,"time":"2024-10-21T17:23:38+00:00","remoteAddr":"[REDACTED]","user":"[REDACTED]","app":"no app in context","method":"POST","url":"/remote.php/dav/bulk","message":"dirty table reads: SELECT fileid FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","userAgent":"Mozilla/5.0 (Macintosh) mirall/3.14.1daily (Nextcloud, macos-23.6.0 ClientArchitecture: arm64 OsArchitecture: arm64)","version":"29.0.7.1","exception":{"Exception":"Exception","Message":"dirty table reads: SELECT fileid FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","Code":0,"Trace":[{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":348,"function":"executeQuery","class":"OC\DB\Connection","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":384,"function":"executeQuery","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":280,"function":"execute","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Cache.php","line":497,"function":"execute","class":"OC\DB\QueryBuilder\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Cache.php","line":515,"function":"getId","class":"OC\Files\Cache\Cache","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Updater.php","line":258,"function":"getParentId","class":"OC\Files\Cache\Cache","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Updater.php","line":145,"function":"correctParentStorageMtime","class":"OC\Files\Cache\Updater","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":298,"function":"update","class":"OC\Files\Cache\Updater","type":"->","args":["*** sensitive parameters replaced "]},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1188,"function":"writeUpdate","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":683,"function":"basicOperation","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/Folder.php","line":192,"function":"file_put_contents","class":"OC\Files\View","type":"->"},{"function":"newFile","class":"OC\Files\Node\Folder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":84,"function":"call_user_func_array"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":463,"function":"__call","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/BulkUpload/BulkUploadPlugin.php","line":92,"function":"newFile","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPost","class":"OCA\DAV\BulkUpload\BulkUploadPlugin","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/Server.php","line":383,"function":"exec","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/remote.php","line":172,"args":["/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/usr/local/nextcloud/lib/private/DB/Connection.php","Line":320,"message":"dirty table reads: SELECT fileid FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","tables":["oc_authtoken","oc_filecache"],"reads":["oc_filecache"],"exception":{},"CustomMessage":"dirty table reads: SELECT fileid FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)"}}
{"reqId":"[REDACTED]","level":0,"time":"2024-10-21T17:23:38+00:00","remoteAddr":"[REDACTED]","user":"[REDACTED]","app":"no app in context","method":"POST","url":"/remote.php/dav/bulk","message":"dirty table reads: SELECT path FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (fileid = :dcValue2)","userAgent":"Mozilla/5.0 (Macintosh) mirall/3.14.1daily (Nextcloud, macos-23.6.0 ClientArchitecture: arm64 OsArchitecture: arm64)","version":"29.0.7.1","exception":{"Exception":"Exception","Message":"dirty table reads: SELECT path FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (fileid = :dcValue2)","Code":0,"Trace":[{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":348,"function":"executeQuery","class":"OC\DB\Connection","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":384,"function":"executeQuery","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":280,"function":"execute","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Cache.php","line":1102,"function":"execute","class":"OC\DB\QueryBuilder\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Cache.php","line":419,"function":"getPathById","class":"OC\Files\Cache\Cache","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Updater.php","line":264,"function":"update","class":"OC\Files\Cache\Cache","type":"->","args":["
sensitive parameters replaced "]},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Updater.php","line":145,"function":"correctParentStorageMtime","class":"OC\Files\Cache\Updater","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":298,"function":"update","class":"OC\Files\Cache\Updater","type":"->","args":[" sensitive parameters replaced ***"]},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1188,"function":"writeUpdate","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":683,"function":"basicOperation","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/Folder.php","line":192,"function":"file_put_contents","class":"OC\Files\View","type":"->"},{"function":"newFile","class":"OC\Files\Node\Folder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":84,"function":"call_user_func_array"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":463,"function":"__call","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/BulkUpload/BulkUploadPlugin.php","line":92,"function":"newFile","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPost","class":"OCA\DAV\BulkUpload\BulkUploadPlugin","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/Server.php","line":383,"function":"exec","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/remote.php","line":172,"args":["/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/usr/local/nextcloud/lib/private/DB/Connection.php","Line":320,"message":"dirty table reads: SELECT path FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (fileid = :dcValue2)","tables":["oc_authtoken","oc_filecache"],"reads":["oc_filecache"],"exception":{},"CustomMessage":"dirty table reads: SELECT path FROM *PREFIX*filecache WHERE (storage = :dcValue1) AND (fileid = :dcValue2)"}}
{"reqId":"[REDACTED]","level":0,"time":"2024-10-21T17:23:38+00:00","remoteAddr":"[REDACTED]","user":"[REDACTED]","app":"no app in context","method":"POST","url":"/remote.php/dav/bulk","message":"dirty table reads: SELECT filecache.fileid, storage, path, path_hash, filecache.parent, filecache.name, mimetype, mimepart, size, mtime, storage_mtime, encrypted, etag, filecache.permissions, checksum, unencrypted_size, metadata_etag, creation_time, upload_time, meta.json AS meta_json, meta.sync_token AS meta_sync_token FROM *PREFIX*filecache filecache LEFT JOIN *PREFIX*filecache_extended fe ON filecache.fileid = fe.fileid LEFT JOIN *PREFIX*files_metadata meta ON filecache.fileid = meta.file_id WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","userAgent":"Mozilla/5.0 (Macintosh) mirall/3.14.1daily (Nextcloud, macos-23.6.0 ClientArchitecture: arm64 OsArchitecture: arm64)","version":"29.0.7.1","exception":{"Exception":"Exception","Message":"dirty table reads: SELECT filecache.fileid, storage, path, path_hash, filecache.parent, filecache.name, mimetype, mimepart, size, mtime, storage_mtime, encrypted, etag, filecache.permissions, checksum, unencrypted_size, metadata_etag, creation_time, upload_time, meta.json AS meta_json, meta.sync_token AS meta_sync_token FROM *PREFIX*filecache filecache LEFT JOIN *PREFIX*filecache_extended fe ON filecache.fileid = fe.fileid LEFT JOIN *PREFIX*files_metadata meta ON filecache.fileid = meta.file_id WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","Code":0,"Trace":[{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":348,"function":"executeQuery","class":"OC\DB\Connection","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":384,"function":"executeQuery","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":280,"function":"execute","class":"Doctrine\DBAL\Query\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/Cache.php","line":164,"function":"execute","class":"OC\DB\QueryBuilder\QueryBuilder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Cache/HomeCache.php","line":57,"function":"get","class":"OC\Files\Cache\Cache","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1336,"function":"get","class":"OC\Files\Cache\HomeCache","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1383,"function":"getCacheEntry","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/HookConnector.php","line":226,"function":"getFileInfo","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/HookConnector.php","line":115,"function":"getNodeForPath","class":"OC\Files\Node\HookConnector","type":"->"},{"file":"/usr/local/nextcloud/lib/private/legacy/OC_Hook.php","line":105,"function":"postCreate","class":"OC\Files\Node\HookConnector","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1287,"function":"emit","class":"OC_Hook","type":"::"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":1214,"function":"runHooks","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/View.php","line":683,"function":"basicOperation","class":"OC\Files\View","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/Folder.php","line":192,"function":"file_put_contents","class":"OC\Files\View","type":"->"},{"function":"newFile","class":"OC\Files\Node\Folder","type":"->"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":84,"function":"call_user_func_array"},{"file":"/usr/local/nextcloud/lib/private/Files/Node/LazyFolder.php","line":463,"function":"__call","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/BulkUpload/BulkUploadPlugin.php","line":92,"function":"newFile","class":"OC\Files\Node\LazyFolder","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPost","class":"OCA\DAV\BulkUpload\BulkUploadPlugin","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/lib/Server.php","line":383,"function":"exec","class":"Sabre\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\DAV\Server","type":"->"},{"file":"/usr/local/nextcloud/remote.php","line":172,"args":["/usr/local/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/usr/local/nextcloud/lib/private/DB/Connection.php","Line":320,"message":"dirty table reads: SELECT filecache.fileid, storage, path, path_hash, filecache.parent, filecache.name, mimetype, mimepart, size, mtime, storage_mtime, encrypted, etag, filecache.permissions, checksum, unencrypted_size, metadata_etag, creation_time, upload_time, meta.json AS meta_json, meta.sync_token AS meta_sync_token FROM *PREFIX*filecache filecache LEFT JOIN *PREFIX*filecache_extended fe ON filecache.fileid = fe.fileid LEFT JOIN *PREFIX*files_metadata meta ON filecache.fileid = meta.file_id WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)","tables":["oc_authtoken","oc_filecache"],"reads":["oc_filecache","oc_filecache_extended","oc_files_metadata"],"exception":{},"CustomMessage":"dirty table reads: SELECT filecache.fileid, storage, path, path_hash, filecache.parent, filecache.name, mimetype, mimepart, size, mtime, storage_mtime, encrypted, etag, filecache.permissions, checksum, unencrypted_size, metadata_etag, creation_time, upload_time, meta.json AS meta_json, meta.sync_token AS meta_sync_token FROM *PREFIX*filecache filecache LEFT JOIN *PREFIX*filecache_extended fe ON filecache.fileid = fe.fileid LEFT JOIN *PREFIX*files_metadata meta ON filecache.fileid = meta.file_id WHERE (storage = :dcValue1) AND (path_hash = :dcValue2)"}}

Additional info

  • The server is running Ubuntu 22.04, but the problem was already present on 20.04.
  • There is 48GB of free space on the server and more than 150GB on the client.
  • I ran occ files:scan --all and occ maintenance:repair.
  • There are no configuration warnings.
  • I tried to pinpoint the issue to specific directories or files but did not reach any conclusive results. I tried both excluding directories via the ignore list and manually removing and re-adding them on both the client and server. At one point or another, the client always becomes unresponsive.
  • I've had this issue across multiple client and server versions. Unfortunately, I don't remember when it started on the client, but on the server, it has been present since before the "Hub" versions were introduced.
  • I tried removing the ".sync" files as suggested in this comment, but with no success.
  • I tried downgrading to several versions, including 3.4.2, but all showed the same symptoms.
  • An excerpt of the server logs is attached. Happy to provide more if needed. Also happy to provide the client logs, but I wasn't sure if they potentially contain any sensitive information.
@marcotrevisan
Copy link

If you are using the Mac OS VFS client, you might be experiencing the same issue decribed here: #7326

@danrex
Copy link
Author

danrex commented Oct 22, 2024

If you are using the Mac OS VFS client, you might be experiencing the same issue decribed here: #7326

Thanks @marcotrevisan. I’m using the 'classic' client. I reviewed the issue for any clues beforehand, but unfortunately, it doesn’t seem related.

@philippgerard
Copy link

Same problem here on 15.0.1 (24A348) with both versions of the client (VFS or not)

@MenacingMight
Copy link

I have the same issue. I have tried using older versions that used to work but the apps still becomes unresponsive with 100% CPU usage.

@rondoron
Copy link

I have the same problem. becomes unresponsive with 100% CPU.
We urgently need a solution here....

Cheers

@undefiened
Copy link

undefiened commented Nov 13, 2024

I don't know whether it is relevant to this, but for me on Ubuntu 24.04, the deb version becomes unresponsive and starts eating more and more RAM until it gets OOM-killed. The behavior is the same on both the latest 3.14.3 version as well as 3.11 from the Ubuntu repos. Apparently, there are some files that trigger it to do so but I see no logic whatsoever, these are just random files which sync perfectly well on my other laptop with the same Ubuntu 24.04 system. I tried deleting configuration files, deleting the sync file, deleting the entire folder and syncing it from scratch, but it all didn't help much. The AppImage version just randomly dies. The flathub version so far seems to stay put.
I don't know whether this bug has anything to do with Nextcloud or I somehow managed to bork my Ubuntu.

@danrex
Copy link
Author

danrex commented Nov 13, 2024

I don't know whether it is relevant to this, but for me on Ubuntu 24.04, the deb version becomes unresponsive and starts eating more and more RAM until it gets OOM-killed. The behavior is the same on both the latest 3.14.3 version as well as 3.11 from the Ubuntu repos. Apparently, there are some files that trigger it to do so but I see no logic whatsoever, these are just random files which sync perfectly well on my other laptop with the same Ubuntu 24.04 system. I tried deleting configuration files, deleting the sync file, deleting the entire folder and syncing it from scratch, but it all didn't help much. The AppImage version just randomly dies. The flathub version so far seems to stay put. I don't know whether this bug has anything to do with Nextcloud or I somehow managed to bork my Ubuntu.

Maybe related to the issue that was shared above (if you use the VFS client)?

@undefiened
Copy link

Maybe related to the issue that was shared above (if you use the VFS client)?

No, I don't think VFS support is implemented for Linux.

@bovender
Copy link

My Nextcloud desktop client also eats 100% CPU and is totally unresponsive, version 3.14.3, AppImage, Fedora 41 (Linux).

So probably not simply @undefiened having borked their Ubuntu...

@stop5
Copy link

stop5 commented Nov 18, 2024

I ran strace on my Nextcloud client.
I found out that the client tried to descent through an Directory symlink. After i removed the symlink, the Client behaved normally again.
Could someone else check if their problem could stem from this?
Previous versions Ignored the Directory since it was an symlink.

@bovender
Copy link

I ran strace on my Nextcloud client.

@stop5 bear with me, I'll report back (note to self: finally stop forgetting about strace when debugging stuff...)

BTW, I was called away from my laptop this morning while the Nextcloud client was at 100% CPU (I had htop running on the side) and when I returned ~1 hour later, Nextcloud was idling.

Furthermore, right now I have the strace nexcloud... running in a terminal and the process is idling, too. Need to find out what exactly triggers the high CPU usage which I've seen on my machine several days in a row now.

@danrex
Copy link
Author

danrex commented Nov 20, 2024

I also invested some more time to dig in deeper and it seems the problem might be related to a connection setting. I had "Upload Bandwidth" set to "Limit automatically". I changed that to "No limit" and the client is working fine for the first time in months. Fingers are still crossed though 🤞.

@verga
Copy link

verga commented Nov 20, 2024

I'm experiencing the same problem in opensuse Tumbleweed; it started with version 3.14.2 and is always present in 3.14.3 I installed today. I have "no limit" bandwidth selected, but alas! 100% CPU usage while syncing.

@Diff-fusion
Copy link

Hey, I have the same issue on Linux as well. Some performance tracing shows that the CPU usage comes from constantly reallocating memory. Tracing that backwards leads to the following code:

const auto allPaths = std::accumulate(_localDiscoveryPaths.begin(), _localDiscoveryPaths.end(), QString{}, [] (auto first, auto second) -> QString {
first += ", " + second;
return first;
});

Here it becomes obvious that the string first is reallocated on every loop iteration and as _localDiscoveryPaths can easily contain thousands of paths this becomes very slow. For me it didn't finish within 30 minutes.

The code was introduced in #7291 and reverting this commit on the latest stable release (3.15) fixes the issue for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants