Skip to content

Can't delete invalid Federated Share #3766

@michel-thomas

Description

@michel-thomas

Hello,
I have a Federated Share that I cannot access anymore, but it is still present in folder view and I cannot delete it (=unregister from it), neither unshare it (this FedShare has been re-shared to other user of my platform).
Many thanks for your analysis.

Steps to reproduce

  1. Someone share a folder via Federated Share
  2. Share it with other user of the instance
  3. Later, this person remove this sharing (don't know how: delete the folder? unshare?)
  4. Folder still appears and cannot be removed or unshare

Expected behaviour

Ability to unshare and remove invalid Federated Share folders.

Actual behaviour

Unsharing produce Error deleting file "DOSSIER PARTAGE CPE".
No deleting possibilities.

Server configuration

Operating system: Debian Wheezy up to date
Web server: Apache 2.2.22-13+deb7u7
Database: MySQL 5.5.46-0+deb7u1
PHP version: PHP 5.6.29-1~dotdeb+7.1
Nextcloud version: 11.0.2
Updated from an older Nextcloud/ownCloud or fresh install: oc9.1.1 -> oc9.1.4 -> nc10.0.4 -> nc11.0.2
Where did you install Nextcloud from: tar.gz
Signing status:

Signing status ``` No errors have been found. ```
**List of activated apps:**
App list ``` # sudo -u www-data ./occ app:list Enabled: - activity: 2.4.1 - calendar: 1.5.1 - comments: 1.1.0 - contacts: 1.5.3 - dav: 1.1.1 - direct_menu: 0.10.0 - external: 1.2 - federatedfilesharing: 1.1.1 - federation: 1.1.1 - files: 1.6.1 - files_pdfviewer: 1.0.1 - files_sharing: 1.1.1 - files_texteditor: 2.2 - files_trashbin: 1.1.0 - files_versions: 1.4.0 - firstrunwizard: 2.0 - logreader: 2.0.0 - lookup_server_connector: 1.0.0 - notifications: 1.0.1 - password_policy: 1.1.0 - provisioning_api: 1.1.0 - serverinfo: 1.1.1 - sharebymail: 1.0.1 - survey_client: 0.1.5 - systemtags: 1.1.3 - tasks: 0.9.5 - templateeditor: 0.2 - theming: 1.1.1 - twofactor_backupcodes: 1.0.0 - updatenotification: 1.1.1 - workflowengine: 1.1.1 Disabled: - admin_audit - encryption - files_accesscontrol - files_automatedtagging - files_external - files_retention - files_videoplayer - gallery - nextcloud_announcements - user_external - user_ldap - user_saml ```

The content of config/config.php:

Config report ``` # sudo -u www-data ./occ config:list system { "system": { "instanceid": "occs60snv57y", "passwordsalt": "***REMOVED SENSITIVE VALUE***", "secret": "***REMOVED SENSITIVE VALUE***", "trusted_domains": [ "my.domain.com" ], "datadirectory": "\/workdir\/my.domain.com\/data", "overwrite.cli.url": "https:\/\/my.domain.com", "dbtype": "mysql", "dbhost": "localhost", "dbname": "dbname", "dbuser": "***REMOVED SENSITIVE VALUE***", "dbpassword": "***REMOVED SENSITIVE VALUE***", "version": "11.0.2.7", "installed": true, "theme": "", "loglevel": 2, "maintenance": false, "trashbin_retention_obligation": "auto", "default_language": "fr", "logfile": "\/workdir\/logs\/owncloud\/my.domain.com.log", "logtimezone": "Europe\/Berlin", "log_rotate_size": "20971520", "minimum.supported.desktop.version": "1.7.0", "memcache.local": "\\OC\\Memcache\\APCu", "updatechecker": true, "appstoreenabled": true, "appstore.experimental.enabled": true } } ```

Are you using external storage, if yes which one: Federated
Are you using encryption: no

Logs

Web server error log

Web server error log
mysql> select * from oc_filecache where path like "%DOSSIER PARTAGE%";
Empty set (0.05 sec)

Nextcloud log (data/nextcloud.log)

Nextcloud log
{"reqId":"Hv0I4OGCBCdiCc8yAMLt","remoteAddr":"109.190.199.43","app":"webdav","message":"Exception: {\"Message\":\"HTTP\\\/1.1 503 Storage is temporarily not available\",\"Exception\":\"Sabre\\\\DAV\\\\Exception\\\\ServiceUnavailable\",\"Code\":0,\"Trace\":\"#0 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Tree.php(178): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\ObjectTree->getNodeForPath('DOSSIER PARTAGE...')\\n#1 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(287): Sabre\\\\DAV\\\\Tree->delete('DOSSIER PARTAGE...')\\n#2 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpDelete(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#3 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#4 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:DELETE', Array)\\n#5 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#6 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/appinfo\\\/v1\\\/webdav.php(60): Sabre\\\\DAV\\\\Server->exec()\\n#7 \\\/workdir\\\/my.domain.com\\\/www\\\/remote.php(165): require_once('\\\/workdir\\\/my.doma....')\\n#8 {main}\",\"File\":\"\\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/ObjectTree.php\",\"Line\":162,\"User\":\"AlterBative\"}","level":4,"time":"2017-03-08T09:22:45+01:00","method":"DELETE","url":"\/remote.php\/webdav\/DOSSIER%20PARTAGE%20CPE","user":"AlterBative","version":"11.0.2.7"}
{"reqId":"Tyc\/kgJrCQ0p\/3c8dK+o","remoteAddr":"185.9.250.47","app":"no app in context","message":"Exception: {\"Exception\":\"Doctrine\\\\DBAL\\\\Exception\\\\DriverException\",\"Message\":\"An exception occurred while executing 'UPDATE `oc_mounts` SET `storage_id` = ?, `mount_point` = ?, `mount_id` = ? WHERE (`user_id` = ?) AND (`root_id` = ?)' with params [\\\"7\\\", \\\"\\\\\\\/Jay\\\\\\\/files\\\\\\\/DOSSIER PARTAGE CPE\\\\\\\/\\\", null, \\\"Jay\\\", 74660]:\\n\\nSQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction\",\"Code\":0,\"Trace\":\"#0 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/DBALException.php(128): Doctrine\\\\DBAL\\\\Driver\\\\AbstractMySQLDriver->convertException('An exception oc...', Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOException))\\n#1 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Connection.php(996): Doctrine\\\\DBAL\\\\DBALException::driverExceptionDuringQuery(Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOMySql\\\\Driver), Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOException), 'UPDATE `oc_moun...', Array)\\n#2 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/DB\\\/Connection.php(215): Doctrine\\\\DBAL\\\\Connection->executeUpdate('UPDATE `oc_moun...', Array, Array)\\n#3 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Query\\\/QueryBuilder.php(208): OC\\\\DB\\\\Connection->executeUpdate('UPDATE `*PREFIX...', Array, Array)\\n#4 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/DB\\\/QueryBuilder\\\/QueryBuilder.php(177): Doctrine\\\\DBAL\\\\Query\\\\QueryBuilder->execute()\\n#5 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/Files\\\/Config\\\/UserMountCache.php(182): OC\\\\DB\\\\QueryBuilder\\\\QueryBuilder->execute()\\n#6 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/Files\\\/Config\\\/UserMountCache.php(129): OC\\\\Files\\\\Config\\\\UserMountCache->updateCachedMount(Object(OC\\\\Files\\\\Config\\\\LazyStorageMountInfo))\\n#7 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/Files\\\/Config\\\/MountProviderCollection.php(134): OC\\\\Files\\\\Config\\\\UserMountCache->registerMounts(Object(OC\\\\User\\\\User), Array)\\n#8 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/Files\\\/Filesystem.php(449): OC\\\\Files\\\\Config\\\\MountProviderCollection->registerMounts(Object(OC\\\\User\\\\User), Array)\\n#9 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/Files\\\/Filesystem.php(375): OC\\\\Files\\\\Filesystem::initMountPoints('Jay')\\n#10 \\\/workdir\\\/my.domain.com\\\/www\\\/lib\\\/private\\\/legacy\\\/util.php(235): OC\\\\Files\\\\Filesystem::init('Jay', '\\\/Jay\\\/files')\\n#11 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/Auth.php(123): OC_Util::setupFS('Jay')\\n#12 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Backend\\\/AbstractBasic.php(105): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Auth->validateUserPass(*** sensitive parameters replaced ***)\\n#13 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/Auth.php(251): Sabre\\\\DAV\\\\Auth\\\\Backend\\\\AbstractBasic->check(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#14 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/Auth.php(154): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Auth->auth(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#15 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Plugin.php(202): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Auth->check(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#16 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Plugin.php(150): Sabre\\\\DAV\\\\Auth\\\\Plugin->check(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#17 [internal function]: Sabre\\\\DAV\\\\Auth\\\\Plugin->beforeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#18 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#19 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(466): Sabre\\\\Event\\\\EventEmitter->emit('beforeMethod', Array)\\n#20 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#21 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/appinfo\\\/v1\\\/webdav.php(60): Sabre\\\\DAV\\\\Server->exec()\\n#22 \\\/workdir\\\/my.domain.com\\\/www\\\/remote.php(165): require_once('\\\/workdir\\\/my.doma....')\\n#23 {main}\",\"File\":\"\\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Driver\\\/AbstractMySQLDriver.php\",\"Line\":116}","level":3,"time":"2017-03-08T09:23:02+01:00","method":"PROPFIND","url":"\/remote.php\/webdav\/Equipe\/Equipe%20d'appui\/Gestion%20horaires","user":"Jay","version":"11.0.2.7"}
{"reqId":"Tyc\/kgJrCQ0p\/3c8dK+o","remoteAddr":"185.9.250.47","app":"webdav","message":"Exception: {\"Message\":\"HTTP\\\/1.1 503 Doctrine\\\\DBAL\\\\Exception\\\\DriverException: An exception occurred while executing 'UPDATE `oc_mounts` SET `storage_id` = ?, `mount_point` = ?, `mount_id` = ? WHERE (`user_id` = ?) AND (`root_id` = ?)' with params [\\\"7\\\", \\\"\\\\\\\/Jay\\\\\\\/files\\\\\\\/DOSSIER PARTAGE CPE\\\\\\\/\\\", null, \\\"Jay\\\", 74660]:\\n\\nSQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction\",\"Exception\":\"Sabre\\\\DAV\\\\Exception\\\\ServiceUnavailable\",\"Code\":0,\"Trace\":\"#0 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Plugin.php(202): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Auth->check(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#1 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Plugin.php(150): Sabre\\\\DAV\\\\Auth\\\\Plugin->check(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#2 [internal function]: Sabre\\\\DAV\\\\Auth\\\\Plugin->beforeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#3 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#4 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(466): Sabre\\\\Event\\\\EventEmitter->emit('beforeMethod', Array)\\n#5 \\\/workdir\\\/my.domain.com\\\/www\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#6 \\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/appinfo\\\/v1\\\/webdav.php(60): Sabre\\\\DAV\\\\Server->exec()\\n#7 \\\/workdir\\\/my.domain.com\\\/www\\\/remote.php(165): require_once('\\\/workdir\\\/my.doma....')\\n#8 {main}\",\"File\":\"\\\/workdir\\\/my.domain.com\\\/www\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/Auth.php\",\"Line\":162,\"User\":\"Jay\"}","level":4,"time":"2017-03-08T09:23:02+01:00","method":"PROPFIND","url":"\/remote.php\/webdav\/Equipe\/Equipe%20d'appui\/Gestion%20horaires","user":"Jay","version":"11.0.2.7"}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions