WebDAV sync OCP\Lock\LockedException
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 2.5k
- Forks
- 1k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 13
Description
Expected behaviour
I want to synchronize my whole image library on my iPhone to Nextcloud
Actual behaviour
When synchronizing via iOS I get error messages like these:
[no app in context] Error: OCP\Lock\LockedException: "files/928bd4ce0d95f3e4e8fc51dc7815c1a1" is locked at <<closure>>
0. /var/www/nextcloud/lib/private/Files/Storage/Common.php line 778
changeLock("files/928bd4ce0d95f3e4e8fc51dc7815c1a1", 2)
1. /var/www/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php line 615
changeLock("files/Photos/20 ... g", 2, OC\Lock\DBLockingProvider {})
2. /var/www/nextcloud/lib/private/Files/View.php line 1970
changeLock("files/Photos/20 ... g", 2, OC\Lock\DBLockingProvider {})
3. /var/www/nextcloud/apps/dav/lib/Connector/Sabre/Node.php line 359
changeLock("/Photos/2018/06 ... g", 2)
4. /var/www/nextcloud/apps/dav/lib/Connector/Sabre/File.php line 219
changeLock(2)
5. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 1130
put(null)
6. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 513
updateFile("Photos/2018/06/ ... g", null, null)
7. <<closure>>
httpPut(Sabre\HTTP\Reque ... "}, Sabre\HTTP\Response {})
8. /var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php line 105
call_user_func_array([Sabre\DAV\CorePlugin {},"httpPut"], [Sabre\HTTP\Requ ... }])
9. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 479
emit("method:PUT", [Sabre\HTTP\Requ ... }])
10. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 254
invokeMethod(Sabre\HTTP\Reque ... "}, Sabre\HTTP\Response {})
11. /var/www/nextcloud/apps/dav/appinfo/v1/webdav.php line 80
exec()
12. /var/www/nextcloud/remote.php line 163
require_once("/var/www/nextcl ... p")
PUT /remote.php/webdav/Photos/2018/06/18-06-06%2018-07-49%200757.jpg
from x.x.x.x by HR_c at 2019-02-11T15:15:35+01:00
Steps to reproduce
- Install and configure Nextcloud
- Downlaod iOS App and connect to Nextcloud
- Enable "Auto upload photos" and "Update the whole camera roll"
iOS version
12.1.4
App version
2.22.820 (2018)
Server configuration
Operating system:
Ubuntu 18.04 LTS
Web server:
Apache 2.4.29
Database:
MySQL version 5.7.25
PHP version:
php7.2
Nextcloud version: (see Nextcloud admin page)
15.0.4
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
Start by reproducing the iOS auto-upload flow described in the issue, focusing on the PUT request to /remote.php/webdav and the LockedException stack through apps/dav. Trace how the app handles the server response during whole-camera-roll synchronization. Done means the reported upload flow completes without the lock error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios, swift
- Domain
- mobile-dev, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100