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

Nested group folders are not synced #1773

Closed
janpekar opened this issue Feb 5, 2020 · 9 comments
Closed

Nested group folders are not synced #1773

janpekar opened this issue Feb 5, 2020 · 9 comments

Comments

@janpekar
Copy link

janpekar commented Feb 5, 2020

When I create nested group folders like

"GroupFolder/SubGroupFolder1/AhotherGroupFolder/"
content of the nested group folders is not being synced automatically.

Only first time, when I select GroupFolder to sync, content is downloaded from server, but any change on the server is not propagated to desktop client.

Even manual force sync will not help you. You need to unselect/uncheck Group folders from sync and again select and whole content is downloaded.

Changes made on desktop are synced with NC server as usual.

Tried with 2.5.1 (Debian Buster package) and also 2.6.2 Linux desktop client (current Appimage package). Was not working with NC 16.x and now tested with NC 17.0.3.

Related issue created in groupfolder issue tracker - nextcloud/groupfolders#652

@camilasan
Copy link
Member

Hi, Could you try to run the most recent desktop client and server to check if you still have this issue? The latest version can be seen by checking https://nextcloud.com/install/#install-clients and https://nextcloud.com/install/#instructions-server respectively.

If you still have this problem with the latest desktop client, please re-open the issue.

Thanks!

@americodias
Copy link

I have this issue! Nextcloud server and clients are the latest versions (Server 21.0.4.1, Client 3.3.1 MacOS and 3.3.2 Windows).

@solracsf
Copy link
Member

solracsf commented Dec 3, 2021

Reopening as this seems to be actual as per nextcloud/groupfolders#1787


Steps to reproduce

  1. Create a group folder (e.g. "Parent Directory")
  2. Create a sub group folder (e.g. "Parent Directory/Sub Directory")
  3. Create a plain text file at parent directory (-> will be synced to server and all Windows clients)
  4. Create a plain text file at sub directory (-> will be synced to server and all Windows clients)
  5. Change the plain text file at parent directory (-> will be synced to server and all Windows clients)
  6. Change the plain text file at sub directory (-> will be synced to server, but not to any Windows client)
  7. Change the plain text file at parent directory again or make any change to the parent directory (-> will be synced to server and all pending changes from step 6 will now be synced to all Windows clients too)

This behaviour affects only nested group folders, not plain sub directories in a group folder.

@solracsf solracsf reopened this Dec 3, 2021
@danir-de
Copy link

danir-de commented Mar 16, 2022

Having the same issue with Nextcloud 23, Group Folders 11.1.2 and Nextcloud Desktop 3.4.x (Win+Linux) so this is still a severe issue for all instances that work with nested group folders.

@MartinRitch
Copy link

Same here on opensuse tumbleweed (latest updates installed) with Nextcloud client version 3.4.4 (also seen on MacOS, but do not have versions at the moment).

-- on the webclient as 'main user':

  • Create a group an put one user into it.
  • Create a groupfolder and grant the previous created group full rights to it.
  • Create a subfolder inside this new groupfolder

-- check on the client as the user of this group

  • open client settings and select the new groupfolder to be synced
  • top level groupfolder and the subfolder are present on the linux client

-- back on the web gui as main user

  • create a subsubfolder inside the subfolder created before

-- check on the client

  • this subsubfolder will not be synced

-- back on the web gui as main user

  • create a new subfolder inside the groupfolders top level

-- check on the client

  • the new subfolder is present
  • and now the subsubfolder from the task before is also present

The subsubfolder also will be synced as soon as a folder is created on the client anywere in the groupfolder space.

@RegisPerdreau
Copy link

Same behaviour in 3.5.1.

@ghost
Copy link

ghost commented Aug 9, 2023

Hi,
not sure, wether its the correct issue but:
Our problem:

  • Delete File via Desktop Client (tested with Windows, Linux (fedora 37), Mac)
  • Error while syncing (see errorlog at the end)

We found a workaround: when setting "activity_use_cached_mountpoints" => false, sync works

error:

NOTICE: PHP message: [nextcloud][webdav][3] {"reqId":"mQs4Jlhny83PAL3XLlow","level":3,"time":"2023-08-09T07:13:01+00:00","remoteAddr":"10.187.9.63","user":"a37232b2-00ee-1039-9415-c3e40dbc5340","app":"webdav","method":"DELETE","url":"/remote.php/dav/files/a37232b2-00ee-1039-9415-c3e40dbc5340/Admins-Teamordner/Testordner/Neues%20Dokument.docx","message":"{\"Exception\":\"TypeError\",\"Message\":\"OC\\\\Files\\\\Utils\\\\PathHelper::normalizePath(): Argument #1 ($path) must be of type string, null given, called in /var/www/html/lib/private/Files/Node/Node.php on line 319\",\"Code\":0,\"Trace\":[{\"file\":\"/var/www/html/lib/private/Files/Node/Node.php\",\"line\":319,\"function\":\"normalizePath\",\"class\":\"OC\\\\Files\\\\Utils\\\\PathHelper\",\"type\":\"::\",\"args\":[null]},{\"file\":\"/var/www/html/lib/private/Files/Node/Root.php\",\"line\":199,\"function\":\"normalizePath\",\"class\":\"OC\\\\Files\\\\Node\\\\Node\",\"type\":\"->\",\"args\":[null]},{\"function\":\"get\",\"class\":\"OC\\\\Files\\\\Node\\\\Root\",\"type\":\"->\",\"args\":[null]},{\"file\":\"/var/www/html/lib/private/Files/Node/LazyFolder.php\",\"line\":74,\"function\":\"call_user_func_array\",\"args\":[[[\"OC\\\\Files\\\\Node\\\\Root\"],\"get\"],[null]]},{\"file\":\"/var/www/html/lib/private/Files/Node/LazyFolder.php\",\"line\":151,\"function\":\"__call\",\"class\":\"OC\\\\Files\\\\Node\\\\LazyFolder\",\"type\":\"->\",\"args\":[\"get\",[null]]},{\"file\":\"/var/www/html/apps/activity/lib/FilesHooks.php\",\"line\":1389,\"function\":\"get\",\"class\":\"OC\\\\Files\\\\Node\\\\LazyFolder\",\"type\":\"->\",\"args\":[null]},{\"file\":\"/var/www/html/apps/activity/lib/FilesHooks.php\",\"line\":1259,\"function\":\"getUnrelatedUsers\",\"class\":\"OCA\\\\Activity\\\\FilesHooks\",\"type\":\"->\",\"args\":[210780,[[\"c15a98de-7a78-102e-86f4-dd48f1cdfd3c\",\"\",\"/c15a98de-7a78-102e-86f4-dd48f1cdfd3c/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"f76042b6-8420-1037-979f-b575923857b7\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/f76042b6-8420-1037-979f-b575923857b7/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"24ac9418-c596-1035-8b7b-9be6dbdbc357\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/24ac9418-c596-1035-8b7b-9be6dbdbc357/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"a37232b2-00ee-1039-9415-c3e40dbc5340\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/a37232b2-00ee-1039-9415-c3e40dbc5340/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"0055974e-92b5-1036-93fa-0dc1f16bf7a6\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/0055974e-92b5-1036-93fa-0dc1f16bf7a6/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"d89e5ab4-5e4d-1032-8089-23be9a45bf9b\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/d89e5ab4-5e4d-1032-8089-23be9a45bf9b/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1],[\"3220b378-5c15-103d-9960-df7bceebf56e\",\"OCA\\\\GroupFolders\\\\Mount\\\\MountProvider\",\"/3220b378-5c15-103d-9960-df7bceebf56e/files/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",1]]]},{\"file\":\"/var/www/html/apps/activity/lib/FilesHooks.php\",\"line\":238,\"function\":\"getAffectedUsersFromCachedMounts\",\"class\":\"OCA\\\\Activity\\\\FilesHooks\",\"type\":\"->\",\"args\":[210780]},{\"file\":\"/var/www/html/apps/activity/lib/FilesHooks.php\",\"line\":179,\"function\":\"addNotificationsForFileAction\",\"class\":\"OCA\\\\Activity\\\\FilesHooks\",\"type\":\"->\",\"args\":[\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",\"file_deleted\",\"deleted_self\",\"deleted_by\"]},{\"file\":\"/var/www/html/apps/activity/lib/FilesHooksStatic.php\",\"line\":62,\"function\":\"fileDelete\",\"class\":\"OCA\\\\Activity\\\\FilesHooks\",\"type\":\"->\",\"args\":[\"/Admins-Teamordner/Testordner/Neues Dokument.docx\"]},{\"file\":\"/var/www/html/lib/private/legacy/OC_Hook.php\",\"line\":105,\"function\":\"fileDelete\",\"class\":\"OCA\\\\Activity\\\\FilesHooksStatic\",\"type\":\"::\",\"args\":[[true,\"/Admins-Teamordner/Testordner/Neues Dokument.docx\"]]},{\"file\":\"/var/www/html/lib/private/Files/View.php\",\"line\":1252,\"function\":\"emit\",\"class\":\"OC_Hook\",\"type\":\"::\",\"args\":[\"OC_Filesystem\",\"delete\",[true,\"/Admins-Teamordner/Testordner/Neues Dokument.docx\"]]},{\"file\":\"/var/www/html/lib/private/Files/View.php\",\"line\":1126,\"function\":\"runHooks\",\"class\":\"OC\\\\Files\\\\View\",\"type\":\"->\",\"args\":[[\"delete\"],\"/Admins-Teamordner/Testordner/Neues Dokument.docx\"]},{\"file\":\"/var/www/html/lib/private/Files/View.php\",\"line\":692,\"function\":\"basicOperation\",\"class\":\"OC\\\\Files\\\\View\",\"type\":\"->\",\"args\":[\"unlink\",\"/Admins-Teamordner/Testordner/Neues Dokument.docx\",[\"delete\"]]},{\"file\":\"/var/www/html/apps/dav/lib/Connector/Sabre/File.php\",\"line\":536,\"function\":\"unlink\",\"class\":\"OC\\\\Files\\\\View\",\"type\":\"->\",\"args\":[\"/Admins-Teamordner/Testordner/Neues Dokument.docx\"]},{\"file\":\"/var/www/html/3rdparty/sabre/dav/lib/DAV/Tree.php\",\"line\":179,\"function\":\"delete\",\"class\":\"OCA\\\\DAV\\\\Connector\\\\Sabre\\\\File\",\"type\":\"->\",\"args\":[]},{\"file\":\"/var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php\",\"line\":281,\"function\":\"delete\",\"class\":\"Sabre\\\\DAV\\\\Tree\",\"type\":\"->\",\"args\":[\"files/a37232b2-00ee-1039-9415-c3e40dbc5340/Admins-Teamordner/Testordner/Neues Dokument.docx\"]},{\"file\":\"/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php\",\"line\":89,\"function\":\"httpDelete\",\"class\":\"Sabre\\\\DAV\\\\CorePlugin\",\"type\":\"->\",\"args\":[[\"Sabre\\\\HTTP\\\\Request\"],[\"Sabre\\\\HTTP\\\\Response\"]]},{\"file\":\"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php\",\"line\":472,\"function\":\"emit\",\"class\":\"Sabre\\\\DAV\\\\Server\",\"type\":\"->\",\"args\":[\"method:DELETE\",[[\"Sabre\\\\HTTP\\\\Request\"],[\"Sabre\\\\HTTP\\\\Response\"]]]},{\"file\":\"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php\",\"line\":253,\"function\":\"invokeMethod\",\"class\":\"Sabre\\\\DAV\\\\Server\",\"type\":\"->\",\"args\":[[\"Sabre\\\\HTTP\\\\Request\"],[\"Sabre\\\\HTTP\\\\Response\"]]},{\"file\":\"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php\",\"line\":321,\"function\":\"start\",\"class\":\"Sabre\\\\DAV\\\\Server\",\"type\":\"->\",\"args\":[]},{\"file\":\"/var/www/html/apps/dav/lib/Server.php\",\"line\":364,\"function\":\"exec\",\"class\":\"Sabre\\\\DAV\\\\Server\",\"type\":\"->\",\"args\":[]},{\"file\":\"/var/www/html/apps/dav/appinfo/v2/remote.php\",\"line\":35,\"function\":\"exec\",\"class\":\"OCA\\\\DAV\\\\Server\",\"type\":\"->\",\"args\":[]},{\"file\":\"/var/www/html/remote.php\",\"line\":172,\"args\":[\"/var/www/html/apps/dav/appinfo/v2/remote.php\"],\"function\":\"require_once\"}],\"File\":\"/var/www/html/lib/private/Files/Utils/PathHelper.php\",\"Line\":52,\"message\":\"OC\\\\Files\\\\Utils\\\\PathHelper::normalizePath(): Argument #1 ($path) must be of type string, null given, called in /var/www/html/lib/private/Files/Node/Node.php on line 319\",\"exception\":{},\"CustomMessage\":\"OC\\\\Files\\\\Utils\\\\PathHelper::normalizePath(): Argument #1 ($path) must be of type string, null given, called in /var/www/html/lib/private/Files/Node/Node.php on line 319\"}","userAgent":"Mozilla/5.0 (Linux) mirall/3.8.2git (Nextcloud, fedora-6.3.4-101.f

The Groupfolder was also a subfolder of another Groupfolder.
Moving to toplevel didnt help.
Moving to another subfolder, was also erasing the error.

Environment:

  • Nextcloud 27.0.1
  • Groupfolders App 15.0.1
  • Activities App 2.19.0
  • Deployed on k8s with csi-nfs pvc for persistence

When needed, I will provide more information.

@VVD
Copy link

VVD commented Dec 23, 2023

I'm using FreeBSD on both desktop and server and have this issue too.
My scenario for reproduce:

  1. Create groupfolder /Test1, then /Test1/Test2 and configure access.
  2. Turn on in Nextcloud Desktop Client sync of the /Test1 and /Test1/Test2.
  3. In Nextclod web interface create file /Test1/Test2/test.txt.
  4. Check local storage connected via Nextcloud Desktop Client - no new file /Test1/Test2/test.txt.
  5. In Nextclod web interface create file /Test1/test.txt.
  6. Check local storage connected via Nextcloud Desktop Client - both files are here /Test1/Test2/test.txt and /Test1/test.txt.

My environment:

Server configuration

Operating system: FreeBSD 13.2-p9 amd64
Web server: Apache 2.4.58
Database: PostgreSQL 15.5
PHP version: PHP 8.2.14
Nextcloud version: 27.1.5
Group folders version: 15.3.2
Updated from an older Nextcloud or fresh install: Update via web-based internal updater
Where did you install Nextcloud from: tar.gz from official source
Are you using external storage, if yes which one: no (local)
Are you using encryption: no
Are you using an external user-backend, if yes which one: IMAP4 via External user authentication 3.2.0

Client configuration

Browser: Firefox 121.0, Nextcloud Desktop-Client 3.10.1, 3.11.0
Operating system: FreeBSD 13.2-p9 amd64

P.S. 4 years have already passed, but the bug is still here...

@solracsf
Copy link
Member

solracsf commented Apr 9, 2024

Might be fixed now as per nextcloud/groupfolders#1787

@solracsf solracsf closed this as completed Apr 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants