Notify Push events make the File Provider extension walks every (known) folder
- Dominant language
- C++
- Stars
- 3.9k
- Forks
- 1k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 123
Description
### ⚠️ Before submitting, please verify the following: ⚠️
- [x] This is a **bug**, not a question or a configuration issue.
- [x] This issue is **not** already reported on Github (I have searched for it).
- [x] Nextcloud Server and Desktop Client are **up to date**. See [Server Maintenance and Release Schedule](https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule) and [Desktop Releases](https://nextcloud.com/install/#install-clients) for supported versions.
- [x] I agree to follow Nextcloud's [Code of Conduct](https://nextcloud.com/contribute/code-of-conduct/)
### Bug description
When the client is notified using notify_push, according to `Library/Containers/com.nextcloud.desktopclient.FileProviderExt/Data/Documents/Logs/log.txt` it crawls every folder it has ever seen. Instead of only the one affected (or its parent folders).
This might or might not be by design, but it feels like a huge waste of resources.
### Steps to reproduce
1. Use macOS File Provider extension
2. Browse through the folders on macOS a bit (so macOS knows parts of the folder structure on the server)
3. Make a change on the server (create/delete a file, etc.)
4. Watch log file, the client crawls every folder it has seen.
### Expected behavior
When receiving a push event, I'd expect the client to only download the changes of the folder affected (and maybe its parent folders), not the entire tree.
### Which files are affected by this bug
any
### Operating system
macOS
### Which version of the operating system you are running.
macOS 26.6.2
### Installation method
Other
### Nextcloud Server version
34.0.3
### Nextcloud Desktop Client version
34.0.2
### Did this occur after an update or on a clean installation?
Minor version update (i.e. 33.0.0 → 33.0.1)
### Are you using the Nextcloud Server Encryption module?
No
### Are you using an external user-backend?
- [x] Default internal user-backend
- [ ] LDAP or Active Directory
- [ ] SSO - SAML
- [ ] Other
### Nextcloud Server logs
```shell
```
### Additional info
_No response_
Contributor guide
Research direction
Start by tracing notify_push handling in the macOS File Provider extension and compare its behavior with Library/Containers/com.nextcloud.desktopclient.FileProviderExt/Data/Documents/Logs/log.txt. Reproduce the issue by browsing several folders, changing a server file, and observing which folders are crawled. Done means a push event refreshes only the affected folder and, if needed, its parent folders rather than every known folder.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, macos
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100