Orphaned mount entries left on remote instance after deleting federated circle
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 177
- Forks
- 68
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 60
Description
How to use GitHub
- Please use the 👍 reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Deleting federated circle with shares doesn't clean up oc_circles_mount/oc_circles_mountpoint tables on remote instance.
Steps to reproduce
- setup federation environment with two Nextcloud instances (e.g.
nc_1+nc_2) - on
nc_1asbob:
- create
test_teamand check "Allow federated members" - add
johnfromnc_2(john@nc_2) - create
test_folderand share withtest_team
- on
nc_2asjohn:
- navigate to files > "All files" (this generates entry on
oc_circles_mountpoint)
- on
nc_2database:
MariaDB [nextcloud2]> SELECT * FROM oc_circles_mount;
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
| id | mount_id | circle_id | single_id | token | parent | mountpoint | mountpoint_hash | remote | remote_id |
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
| 3 | RLNrDNoxqco3miX | vPvDgqqAe8DLTvY4UCYcUPBBpAy6rCr | Tv497OEV968gV5LAwP2UKvuKNnw9EpW | | -1 | /test_folder | 621df261a24cccbef218646ca800cccc | nextcloud.local | 4 |
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
1 row in set (0.000 sec)
MariaDB [nextcloud2]> SELECT * FROM oc_circles_mountpoint;
+----+-----------------+---------------------------------+--------------+----------------------------------+
| id | mount_id | single_id | mountpoint | mountpoint_hash |
+----+-----------------+---------------------------------+--------------+----------------------------------+
| 3 | RLNrDNoxqco3miX | 1iGuQvoC19E5dkwSEXvgRvf3OXYiA3m | /test_folder | acf4921df4e099066ff9ff542447b1cd |
+----+-----------------+---------------------------------+--------------+----------------------------------+
1 row in set (0.000 sec)
- notice how entries are generated correctly
- on
nc_1asbob
- delete
test_team
- on
nc_2asjohn
- navigate to files > "All files"
- notice how
test_foldernow longer appears there, which is correct
- on
nc_2database:
MariaDB [nextcloud2]> SELECT * FROM oc_circles_mount;
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
| id | mount_id | circle_id | single_id | token | parent | mountpoint | mountpoint_hash | remote | remote_id |
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
| 3 | RLNrDNoxqco3miX | vPvDgqqAe8DLTvY4UCYcUPBBpAy6rCr | Tv497OEV968gV5LAwP2UKvuKNnw9EpW | | -1 | /test_folder | 621df261a24cccbef218646ca800cccc | nextcloud.local | 4 |
+----+-----------------+---------------------------------+---------------------------------+-------+--------+--------------+----------------------------------+-----------------+-----------+
1 row in set (0.000 sec)
MariaDB [nextcloud2]> SELECT * FROM oc_circles_mountpoint;
+----+-----------------+---------------------------------+--------------+----------------------------------+
| id | mount_id | single_id | mountpoint | mountpoint_hash |
+----+-----------------+---------------------------------+--------------+----------------------------------+
| 3 | RLNrDNoxqco3miX | 1iGuQvoC19E5dkwSEXvgRvf3OXYiA3m | /test_folder | acf4921df4e099066ff9ff542447b1cd |
+----+-----------------+---------------------------------+--------------+----------------------------------+
1 row in set (0.000 sec)
- notice how entries are not removed, this is incorrect, should be cleaned up
Expected behaviour
when deleting a federated circle with shares, related entries on remote instances oc_circles_mount and oc_circles_mountpoint tables should be removed
Actual behaviour
when deleting a federated circle with shares, related entries on remote instances oc_circles_mount and oc_circles_mountpoint are kept there, orphaned
Server configuration
Web server: Apache/Nginx
Database: MySQL/Maria/SQLite/PostgreSQL
PHP version: 8.5/8.4/8.3
Nextcloud version: Nextcloud 36.0.0 dev
List of activated apps
Enabled: - appstore: 3.0.0-dev.0 - circles: 36.0.0-dev.0 - cloud_federation_api: 3.0.0-dev.0 - comments: 3.0.0-dev.0 - contactsinteraction: 3.0.0-dev.0 - dashboard: 9.0.0-dev.0 - dav: 3.0.0-dev.0 - federatedfilesharing: 3.0.0-dev.0 - federation: 3.0.0-dev.0 - files: 4.0.0-dev.0 - files_pdfviewer: 8.0.0-dev.0 - files_reminders: 3.0.0-dev.0 - files_sharing: 3.0.0-dev.0 - files_trashbin: 3.0.0-dev.0 - files_versions: 3.0.0-dev.0 - lookup_server_connector: 3.0.0-dev.0 - oauth2: 3.0.0-dev.0 - profile: 3.0.0-dev.0 - provisioning_api: 3.0.0-dev.0 - recommendations: 8.0.0-dev.0 - settings: 3.0.0-dev.0 - sharebymail: 3.0.0-dev.0 - sharing: 2.0.0-dev.1 - systemtags: 3.0.0-dev.0 - text: 9.0.0-dev.0 - theming: 4.0.0-dev.0 - twofactor_backupcodes: 3.0.0-dev.0 - updatenotification: 3.0.0-dev.0 - user_status: 3.0.0-dev.0 - viewer: 8.0.0-dev.0 - weather_status: 3.0.0-dev.0 - webhook_listeners: 3.0.0-dev.0 - workflowengine: 4.0.0-dev.0 Disabled: - admin_audit: 3.0.0-dev.0 - contacts: 8.8.0-dev.0 - encryption: 4.0.0-dev.0 - files_external: 3.0.0-dev.0 - globalsiteselector: 2.7.3 - groupfolders: 23.0.0-dev.3 - hmr_enabler: 1.4.0-dev.0 - profiler: 6.0.0-dev.0 - testing: 3.0.0-dev.0 - user_ldap: 3.0.0-dev.0 - user_oidc: 8.11.0 ``` If you have access to your command line run e.g.: sudo -u www-data php occ app:list from within your Nextcloud installation folder ```Nextcloud configuration
If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder
Browser
Browser name: Firefox/Chrome/Safari/…
Browser version: 124/125/…
Operating system: Windows/Ubuntu/Mac/…
Browser log
Insert your browser log here, this could for example include:
a) The javascript console log
b) The network log
c) ...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is named. Start by tracing federated circle deletion in the circles app and the handling of oc_circles_mount and oc_circles_mountpoint on the remote instance. Reproduce the two-instance scenario and verify that both related rows are removed after the circle is deleted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend, databases, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100