WebDAV and shared information is broken

I can’t stop the errors in WebDAV. At the same time, each user’s share settings were broken.

Sabre\DAV\Exception\ServiceUnavailable: Storage is temporarily not available

{"reqId":"QM7hvg9rKUvcYbnvG61m","level":4,"time":"2020-07-20T10:50:49+09:00","remoteAddr":"120.75.162.119","user":"hokkyoku","app":"webdav","method":"PROPFIND","url":"/remote.php/webdav/%E6%A8%AA%E6%B5%9C%E3%83%87%E3%83%BC%E3%82%BF/02_%E4%BA%8B%E5%8B%99%E6%89%80%E7%94%A8/%E9%9D%A2%E6%8E%A5","message":{"Exception":"Sabre\\DAV\\Exception\\ServiceUnavailable","Message":"Storage is temporarily not available","Code":0,"Trace":[{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":976,"function":"getNodeForPath","class":"OCA\\DAV\\Connector\\Sabre\\ObjectTree","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1678,"function":"getPropertiesIteratorForPath","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1661,"function":"writeMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":363,"function":"generateMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPropFind","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":474,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":251,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":319,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php","line":82,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/remote.php","line":167,"args":["/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/MY-NEXTCLOUD/apps/dav/lib/Connector/Sabre/ObjectTree.php","Line":162,"Previous":{"Exception":"OCP\\Files\\StorageNotAvailableException","Message":"File with id \"854\" has not been found.","Code":0,"Trace":[{"file":"/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Jail.php","line":239,"function":"file_exists","class":"OC\\Files\\Storage\\FailedStorage","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php","line":226,"function":"file_exists","class":"OC\\Files\\Storage\\Wrapper\\Jail","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/View.php","line":1334,"function":"file_exists","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/View.php","line":1383,"function":"getCacheEntry","class":"OC\\Files\\View","type":"->"},{"file":"/MY-NEXTCLOUD/apps/dav/lib/Connector/Sabre/ObjectTree.php","line":156,"function":"getFileInfo","class":"OC\\Files\\View","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":976,"function":"getNodeForPath","class":"OCA\\DAV\\Connector\\Sabre\\ObjectTree","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1678,"function":"getPropertiesIteratorForPath","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1661,"function":"writeMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":363,"function":"generateMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPropFind","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":474,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":251,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":319,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php","line":82,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/remote.php","line":167,"args":["/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/MY-NEXTCLOUD/lib/private/Files/Storage/FailedStorage.php","Line":114,"Hint":"Storage is temporarily not available","Previous":{"Exception":"OCP\\Files\\NotFoundException","Message":"File with id \"854\" has not been found.","Code":0,"Trace":[{"file":"/MY-NEXTCLOUD/apps/files_sharing/lib/SharedStorage.php","line":129,"function":"getPath","class":"OC\\Files\\View","type":"->"},{"file":"/MY-NEXTCLOUD/apps/files_sharing/lib/SharedStorage.php","line":483,"function":"init","class":"OCA\\Files_Sharing\\SharedStorage","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php","line":547,"function":"getWrapperStorage","class":"OCA\\Files_Sharing\\SharedStorage","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php","line":547,"function":"verifyPath","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/MY-NEXTCLOUD/lib/private/Files/View.php","line":1848,"function":"verifyPath","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/MY-NEXTCLOUD/apps/dav/lib/Connector/Sabre/ObjectTree.php","line":123,"function":"verifyPath","class":"OC\\Files\\View","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":976,"function":"getNodeForPath","class":"OCA\\DAV\\Connector\\Sabre\\ObjectTree","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1678,"function":"getPropertiesIteratorForPath","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":1661,"function":"writeMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":363,"function":"generateMultiStatus","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPropFind","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":474,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":251,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php","line":319,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php","line":82,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/MY-NEXTCLOUD/remote.php","line":167,"args":["/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/MY-NEXTCLOUD/lib/private/Files/View.php","Line":1755}},"CustomMessage":"--"},"userAgent":"Microsoft-WebDAV-MiniRedir/10.0.18363","version":"19.0.1.1","id":"5f14f87deddcf"}

Each user still has the settings for sharing. The relevant files are also shown to those who are shared. If the person being shared has access to the file, they are not connected to it.

Even if the co-owner removes the sharing setting, it may still remain behind the scenes.

I did run the occ maitenance:repair command but this did not fix it.

Is there any way to repair it?
Or is there a way to clear the sharing settings for all users once?


NC19.0.1, PHP 7.4.8, Nginx 1.16.1, MariaDB 10.2.32

I’m manually reconfiguring the sharing settings now. There are not “hidden” files, but “invisible” files. That “invisible file” is a corrupted shared configuration files/folders.

If some folder contains an “invisible file”, I can delete it by deleting the parent folder. But if the file is on the top level, it is not visible and cannot be deleted or unshared. *These invisible files are displayed in the WebUI action menu’s Move Copy dialog.

Is there any way to delete these invisible files?

Open a shell access and delete the files in question on the console.

Excuse me, what is “shell access” in NC?
For example, I can connect via SSH and look into the relevant directory, but its “invisible files” are not there.

“[Shell access](https://en.wikipedia.org/wiki/Shell_(computing)” isn’t Nextcloud specific and means that you should access your server using SSH. Usually all files are shown there, including invisible ones.

Please be more precise and provide a screenshot of such an “invisible file” and how the folder content looks like on the console.

The “ls -a” command does not show it.
Do the shared files show up in the console in the first place? Shared from another user. Sharing other people’s files.

Sorry, I wanted to show you an example of a web UI, but it’s all been processed. All that remains is the file in each user’s top directory. The file does not appear in the Move/Copy dialog. Users cannot create a new file with the same name in the top directory. Because the file already exists.

The above error occurs when a user accesses a directory with an “invisible file” mounted in WebDAV.

At this point, there is an “ID”.

CAUSE: OCP\Files\StorageNotAvailableException: File with id “12418” has not been found.

Is it dangerous to delete the corresponding ID in the oc_share table in MariaDB?

Fatal	webdav	Sabre\DAV\Exception\ServiceUnavailable: Storage is temporarily not available
/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 976:

OCA\DAV\Connector\Sabre\ObjectTree->getNodeForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1678:

Sabre\DAV\Server->getPropertiesIteratorForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1661:

Sabre\DAV\Server->writeMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 363:

Sabre\DAV\Server->generateMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php - line 89:

Sabre\DAV\CorePlugin->httpPropFind()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 474:

Sabre\DAV\Server->emit()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 251:

Sabre\DAV\Server->invokeMethod()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 319:

Sabre\DAV\Server->start()

/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php - line 82:

Sabre\DAV\Server->exec()

/MY-NEXTCLOUD/remote.php - line 167:

require_once("/var/www/vh ... p")

CAUSE:OCP\Files\StorageNotAvailableException: File with id "12418" has not been found.
/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Jail.php - line 239:

OC\Files\Storage\FailedStorage->file_exists()

/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php - line 226:

OC\Files\Storage\Wrapper\Jail->file_exists()

/MY-NEXTCLOUD/lib/private/Files/View.php - line 1334:

OC\Files\Storage\Wrapper\Wrapper->file_exists()

/MY-NEXTCLOUD/lib/private/Files/View.php - line 1383:

OC\Files\View->getCacheEntry()

/MY-NEXTCLOUD/apps/dav/lib/Connector/Sabre/ObjectTree.php - line 156:

OC\Files\View->getFileInfo()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 976:

OCA\DAV\Connector\Sabre\ObjectTree->getNodeForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1678:

Sabre\DAV\Server->getPropertiesIteratorForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1661:

Sabre\DAV\Server->writeMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 363:

Sabre\DAV\Server->generateMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php - line 89:

Sabre\DAV\CorePlugin->httpPropFind()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 474:

Sabre\DAV\Server->emit()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 251:

Sabre\DAV\Server->invokeMethod()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 319:

Sabre\DAV\Server->start()

/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php - line 82:

Sabre\DAV\Server->exec()

/MY-NEXTCLOUD/remote.php - line 167:

require_once("/var/www/vh ... p")

CAUSE:OCP\Files\NotFoundException: File with id "12418" has not been found.
/MY-NEXTCLOUD/apps/files_sharing/lib/SharedStorage.php - line 129:

OC\Files\View->getPath()

/MY-NEXTCLOUD/apps/files_sharing/lib/SharedStorage.php - line 483:

OCA\Files_Sharing\SharedStorage->init()

/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php - line 547:

OCA\Files_Sharing\SharedStorage->getWrapperStorage()

/MY-NEXTCLOUD/lib/private/Files/Storage/Wrapper/Wrapper.php - line 547:

OC\Files\Storage\Wrapper\Wrapper->verifyPath()

/MY-NEXTCLOUD/lib/private/Files/View.php - line 1848:

OC\Files\Storage\Wrapper\Wrapper->verifyPath()

/MY-NEXTCLOUD/apps/dav/lib/Connector/Sabre/ObjectTree.php - line 123:

OC\Files\View->verifyPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 976:

OCA\DAV\Connector\Sabre\ObjectTree->getNodeForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1678:

Sabre\DAV\Server->getPropertiesIteratorForPath()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 1661:

Sabre\DAV\Server->writeMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 363:

Sabre\DAV\Server->generateMultiStatus()

/MY-NEXTCLOUD/3rdparty/sabre/event/lib/WildcardEmitterTrait.php - line 89:

Sabre\DAV\CorePlugin->httpPropFind()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 474:

Sabre\DAV\Server->emit()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 251:

Sabre\DAV\Server->invokeMethod()

/MY-NEXTCLOUD/3rdparty/sabre/dav/lib/DAV/Server.php - line 319:

Sabre\DAV\Server->start()

/MY-NEXTCLOUD/apps/dav/appinfo/v1/webdav.php - line 82:

Sabre\DAV\Server->exec()

/MY-NEXTCLOUD/remote.php - line 167:

require_once("/var/www/vh ... p")

I have found a way to remove those invisible files/folders. Create a folder with the same name as the target file in the same directory hierarchy. You will then see an error notification, but a shared dummy file will be created. I was able to remove the invisible files by unsharing that dummy file.

1 Like

The fundamental problem has not been solved. What is the reason for this ghost file/directory?
There seems to be a lot of ghost files/directory that I am not aware of. Is there any way to find the ghost file?

When a user opens a shared file, some files seem to have different contents. It’s shared in a different file.

Sorry, but as long as you’re not providing DETAILED information about these files, how their named, what their content is, who the owner of the files is, etc., etc., it won’t be possible to debug any further.

I noticed another problem that arose at the same time.
The icon is ‘?’ in the file list when the share source is ‘Group’.
image

When the user sets up the sharing settings, the acronym will appear on the icon without any problems. Not the question mark.

Please stay focused and try to concentrate on one single problem at a time and don’t mix-up several different problems at the same time. If you find a different problem, open a new thread to get this addressed.