nextcloud / desktop

💻 Desktop sync client for Nextcloud
https://nextcloud.com/install/#install-clients
GNU General Public License v2.0
2.97k stars 784 forks source link

[Bug]: after upgrade to >=3.8.2 the client consumes 100% CPU and shows "synchronising" when opened from the tray #5726

Open thiemel opened 1 year ago

thiemel commented 1 year ago

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

Bug description

After Windows' Nextcloud client upgrade from 3.8.1 to 3.8.2 it consumes 100 % CPU (1 core). Although it shows "green" icon in the tray, it shows "blue" synchronising when opened. The application is very slow and "unresponsive"

I have ~2200 folders and ~117000 files in them (821 GB in total) saved on my private Nextcloud server version 25.0.6.

Here is 3.8.1 client: image image image image image

Here is 3.8.2 client: image

Previously it had problem with .css~ and .txt~ local files, so I deleted them.

OS: Microsoft Windows 10 - Version 10.0.19045.2965

Steps to reproduce

Install NextCloud client 3.8.2 or higher, start the application.

Expected behavior

After some time since the application starts, the CPU usage by the app should go to "zero".

Which files are affected by this bug

nextcloud.exe

Operating system

Windows

Which version of the operating system you are running.

Windows 10

Package

Appimage

Nextcloud Server version

25.0.6

Nextcloud Desktop Client version

3.8.2

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?

Nextcloud Server logs

Server log with client v. 3.8.2
<client IP> - <username> [23/May/2023:17:20:54 +0200] "GET /status.php HTTP/1.1" 200 170
<client IP> - <username> [23/May/2023:17:20:54 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 247
<client IP> - <username> [23/May/2023:17:20:54 +0200] "GET /ocs/v1.php/cloud/capabilities?format=json HTTP/1.1" 200 2534
<client IP> - <username> [23/May/2023:17:20:54 +0200] "GET /ocs/v2.php/apps/files/api/v1/directEditing?format=json HTTP/1.1" 200 335
<client IP> - <username> [23/May/2023:17:20:55 +0200] "GET /ocs/v1.php/cloud/user?format=json HTTP/1.1" 200 538
<client IP> - <username> [23/May/2023:17:20:55 +0200] "GET /remote.php/dav/avatars/<username>/128.png HTTP/1.1" 200 13731
<client IP> - <username> [23/May/2023:17:20:55 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 200 81
<client IP> - <username> [23/May/2023:17:20:55 +0200] "GET /ocs/v2.php/core/navigation/apps?absolute=true&format=json HTTP/1.1" 200 594
<client IP> - <username> [23/May/2023:17:20:55 +0200] "GET /ocs/v2.php/core/navigation/apps?absolute=true&format=json HTTP/1.1" 200 594
<client IP> - <username> [23/May/2023:17:20:55 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:21:02 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -
[Tue May 23 17:21:02.963670 2023] [php:notice] [pid 20131] [client <client IP>:50466] [owncloud][activity][2] {"reqId":"ZGzZ3tYJcFSi0PfiVw5ElQAAAAM","level":2,"time":"2023-05-23T15:21:02+00:00","remoteAddr":"<client IP>","user":"<username>","app":"activity","method":"GET","url":"/ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=0&limit=50&format=json","message":"Controller OCA\\\\Activity\\\\Controller\\\\APIv2Controller::getDefault executed 110 queries.","userAgent":"Mozilla/5.0 (Windows) mirall/3.8.2stable-Win64 (build 20230516) (Nextcloud, windows-10.0.19045 ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"25.0.6.1","data":{"app":"activity"}}
<client IP> - <username> [23/May/2023:17:21:02 +0200] "GET /ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=0&limit=50&format=json HTTP/1.1" 200 3310
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/apps/theming/img/core/filetypes/file.svg?v=4bb76e57 HTTP/1.1" 200 228
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203454&c=e5d7dbea49606a3cec1710527f216be8 HTTP/1.1" 200 92892
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203449&c=9e5683564178cf6d59ad13509780c01b HTTP/1.1" 200 19700
<client IP> - - [23/May/2023:17:21:03 +0200] "GET /core/img/actions/download.svg HTTP/1.1" 200 138
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/apps/theming/img/core/filetypes/video.svg?v=4bb76e57 HTTP/1.1" 200 277
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&c=068cf0fcdd282683cc4df786f7975647&x=250&y=250&fileId=1203270 HTTP/1.1" 200 22763<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203265&c=a4d82e93d7eb1caa6ff1df1f5bbddfa2 HTTP/1.1" 200 26887
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203255&c=a2d7d3b547bab5dbc3a25661ae3dbb48 HTTP/1.1" 200 27495<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203250&c=dea2a2167d102001230fa3b8e2bc654c HTTP/1.1" 200 35989
<client IP> - <username> [23/May/2023:17:21:03 +0200] "GET /ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=596506&limit=50&format=json HTTP/1.1" 200 2000
<client IP> - <username> [23/May/2023:17:21:08 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203249&c=5f1d85e04f3032faeaaa57fd0e702eda HTTP/1.1" 200 22479<client IP> - <username> [23/May/2023:17:21:08 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203244&c=4472161ccf694c4a4e50a8ce4953f99a HTTP/1.1" 200 32264
<client IP> - <username> [23/May/2023:17:21:43 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -
<client IP> - <username> [23/May/2023:17:22:15 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -

====================================================

Server log with client v. 3.8.1
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /status.php HTTP/1.1" 200 170
<client IP> - <username> [23/May/2023:17:26:43 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 247
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v1.php/cloud/capabilities?format=json HTTP/1.1" 200 2534
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v2.php/apps/files/api/v1/directEditing?format=json HTTP/1.1" 200 335
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v1.php/cloud/user?format=json HTTP/1.1" 200 538
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /remote.php/dav/avatars/<username>/128.png HTTP/1.1" 200 13731
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 200 81
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v2.php/core/navigation/apps?absolute=true&format=json HTTP/1.1" 200 594
<client IP> - <username> [23/May/2023:17:26:43 +0200] "GET /ocs/v2.php/core/navigation/apps?absolute=true&format=json HTTP/1.1" 200 594
<client IP> - <username> [23/May/2023:17:26:43 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -
[Tue May 23 17:26:48.206953 2023] [php:notice] [pid 20383] [client <client IP>:50495] [owncloud][activity][2] {"reqId":"ZGzbOC8HAH4XjVc3c2414QAAAAg","level":2,"time":"2023-05-23T15:26:48+00:00","remoteAddr":"<client IP>","user":"<username>","app":"activity","method":"GET","url":"/ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=0&limit=50&format=json","message":"Controller OCA\\\\Activity\\\\Controller\\\\APIv2Controller::getDefault executed 110 queries.","userAgent":"Mozilla/5.0 (Windows) mirall/3.8.1stable-Win64 (build 20230419) (Nextcloud, windows-10.0.19045 ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"25.0.6.1","data":{"app":"activity"}}
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=0&limit=50&format=json HTTP/1.1" 200 3310
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/apps/theming/img/core/filetypes/file.svg?v=4bb76e57 HTTP/1.1" 200 228
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203449&c=9e5683564178cf6d59ad13509780c01b HTTP/1.1" 200 19700
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203454&c=e5d7dbea49606a3cec1710527f216be8 HTTP/1.1" 200 92892
<client IP> - - [23/May/2023:17:26:48 +0200] "GET /core/img/actions/download.svg HTTP/1.1" 200 138
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203265&c=a4d82e93d7eb1caa6ff1df1f5bbddfa2 HTTP/1.1" 200 26887
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&c=068cf0fcdd282683cc4df786f7975647&x=250&y=250&fileId=1203270 HTTP/1.1" 200 22763
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/apps/theming/img/core/filetypes/video.svg?v=4bb76e57 HTTP/1.1" 200 277
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203255&c=a2d7d3b547bab5dbc3a25661ae3dbb48 HTTP/1.1" 200 27495
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203250&c=dea2a2167d102001230fa3b8e2bc654c HTTP/1.1" 200 35989
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /ocs/v2.php/apps/activity/api/v2/activity?previews=true&since=596506&limit=50&format=json HTTP/1.1" 200 2000
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203249&c=5f1d85e04f3032faeaaa57fd0e702eda HTTP/1.1" 200 22479
<client IP> - <username> [23/May/2023:17:26:48 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203244&c=4472161ccf694c4a4e50a8ce4953f99a HTTP/1.1" 200 32264
<client IP> - <username> [23/May/2023:17:27:03 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:27:28 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:27:41 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -
<client IP> - <username> [23/May/2023:17:27:43 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203244&c=4472161ccf694c4a4e50a8ce4953f99a HTTP/1.1" 200 32264
<client IP> - <username> [23/May/2023:17:27:47 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 247
<client IP> - <username> [23/May/2023:17:27:54 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:28:08 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203244&c=4472161ccf694c4a4e50a8ce4953f99a HTTP/1.1" 200 32264
<client IP> - <username> [23/May/2023:17:28:19 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:28:32 +0200] "GET /index.php/core/preview?forceIcon=0&a=0&x=250&y=250&fileId=1203244&c=4472161ccf694c4a4e50a8ce4953f99a HTTP/1.1" 200 32264
<client IP> - <username> [23/May/2023:17:28:41 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 -
<client IP> - <username> [23/May/2023:17:28:43 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 6779
<client IP> - <username> [23/May/2023:17:28:45 +0200] "PROPFIND /remote.php/dav/files/<username>/ HTTP/1.1" 207 247

Additional info

Password for both ZIP & 7zip archive is the string after "fileId=1203249&c=" in Server logs above. Why 7-zip in ZIP archive? Because uncompressed logs have ~1GB due to the "bug" in 3.8.2 and GitHub does not allow *.7z files.

nextcloud-3.8.1+3.8.2-debug.7z.zip

g4nd4lf commented 1 year ago

I have a similar issue in MacOs Big Sur 11.7.6. 100% CPU consuming with version 3.8.2 and keeps showing "sincronizando" (synchronising)

image

r-walker commented 1 year ago

I'm running the Mac desktop client on MacOS 13.4, with the same version of nextcloud server and similar numbers of files. I am having the same problem as described here since upgrading the client to 3.8.2. I'm willing to provide any additional details if it would be helpful.

grefel commented 1 year ago

Can confirm problems with 3.8.2 on Windows 10 it feels like the desktop client checks any file on every sync process. This takes 30 Minutes for a single sync run in my case.

maurizioaiello commented 1 year ago

Same for me. Mac monterey 12.6.6 Nextcloud server 26.0.2 Desktop client 3.8.2 osx-21.6.0

maurizioaiello commented 1 year ago

Same for me. Mac monterey 12.6.6 Nextcloud server 26.0.2 Desktop client 3.8.2 osx-21.6.0

And solved by downgrading to 3.8.0. Now it works like a charm. I will wait the next release of client...

akail commented 1 year ago

I will add that this is also an issue on Linux and I noticed it started last week after running a full system upgrade.

EndeavourOS Kernel: 6.3.4 Nextcloud Server: 26.0.1 Nextcloud client: 3.8.2-1

Update: Rolling back to 3.8.1 has resolved this.

solick commented 1 year ago

I can confirm the problem in MacOS too. After Upgrade from 3.8.1 to 3.8.2

ajm2311 commented 1 year ago

Same issue here.

Windows: 10 & 11 Nextcloud Server: 26.0.2 Nextcloud Client: 3.8.2

Rolling back to 3.8.1 has resolved this.

PhilippSchlesinger commented 1 year ago

Please check and report back if this is fixed by PR https://github.com/nextcloud/desktop/pull/5680 that is intended to fix https://github.com/nextcloud/desktop/issues/4106.

thiemel commented 1 year ago

Issue can be closed. Problem seems to be fixed in next official version/update.

alerque commented 1 year ago

@thiemel What version are you talking about and do you have a link to the relevant PR or commit(s) that supposedly fix this? The current status for me is still broken I am unable to confirm any progress towards a fix.

p-sims commented 11 months ago

This seems to still be present on client v3.10.0 with server v25 on macOS 10.14 Screenshot 2023-10-21 at 21 43 41 Screenshot 2023-10-21 at 21 45 21

This is with 100+GB sync folder....

It is however not consistent, First updated from 3.7.x it used 100% as was unresponsive for a while, but then settled down. It was then fine so I ignore, but it has now happened again. And after restarting it happens repeatedly.... Didn't happen before update, and I'd avoided v3.8.x & v3.9.x due to 100% usage issue raised above.

egost commented 10 months ago

Same issue

OS: MacOs 14.0 - Apple M1 Pro Desktop Client: Nextcloud 3.10.1git Server: Nextcloud 27.0.2

Reverted back to 3.8.1. So far the issue is fixed.

egost commented 10 months ago

Same issue

OS: MacOs 14.0 - Apple M1 Pro Desktop Client: Nextcloud 3.10.1git Server: Nextcloud 27.0.2

Reverted back to 3.8.1. So far the issue is fixed.

Nope.. after letting it sync my ~80GB of data, it started to 100% CPU again.

What other information can I provide to help with this issue?

Screenshot 2023-10-31 23 51 37

mediabecker commented 9 months ago

I have had the same problem since the last server update to 27.1.2, downgrading the client didn't help, nor did a reinstall or other recommended measures. The only thing that really helped is to deactivate the automatic limitation of the download and upload bandwidth in Settings/Network, after which the CPU load (Macmini M1) is at 10 - 20%. However, this leads to other users in the network complaining about a spotty internet connection.

The same problem existed with two other older Macminis (3.6 GHz quad-core Intel Core i3/Sonoma/Client 3.10.1 and 2.6 GHz quad-core Intel Core i7/Catalina/Client 3.9.4) and could be solved in the same way. So it doesn't seem to be the client, but the server.

Further research has provided information about the changed default setting "System config value bulkupload.enabled set to boolean true" on newer server versions. After setting this to "false", the automatic bandwidth limitation workes perfectly again and the CPU load is no longer increased by the clients. This could be a workaround until the problems with the bulk upload are solved.

alerque commented 9 months ago

Just as a point of reference I checked and this bug is still around in v3.11.0, so when I updated the Arch Linux package to that version I left the long-running patch in that disables bulk uploads. Basically it just falsifies the return code from the server when the client asks if it supports bulk uploads so it thinks the server doesn't support it and doesn't try.

This monkey patch has been in place for some time now so don't take anybody saying "it works for me" seriously if they are on Arch Linux!

alerque commented 9 months ago

Also this is not a performance bug! It isn't just slow it absolutely cripples the host computer and fails to run/load into any usable state. It's just a bug, not a performance issue.