You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Related issue: #1204, though that suggests (1) specific to the Notes app, and (2) affected by a Veracrypt encrypted volume on the windows side.
Expected behaviour
When using the new Workspaces, a single Readme.md file (in whatever case) is referenced (and the filename case preserved).
Actual behaviour
When a Readme.md file is created on the server, the windows client then requests/syncs all three of README.md , Readme.md, and readme.md. Since windows' filesystem is not case-sensitive, this causes collisions and errors. While this does not prevent syncing of other files/folders, it does produce an error (and notification) every time the client attempts to sync.
Steps to reproduce
Install NC18.
In the web-interface navigate to a directory, click into the workspace area at the top. This causes NC server to create a Readme.md file (regardless of content).
Installation path of client: C:\Program Files\Nextcloud\nextcloud.exe
Server configuration
Nextcloud version: 18.0.0
Storage backend (external storage): none
Logs
1. Client logfile:
[OCC::FolderMan::scheduleFolderNext Schedule folder "2" to sync! Front-of-queue.
[OCC::ownCloudGui::slotSyncStateChange Sync state changed for folder "https://oc.mydomain.com/subdir/remote.php/webdav/" : "Not yet Started"
[OCC::AccessManager::createRequest 2 "" "https://oc.mydomain.com/subdir/ocs/v2.php/apps/notifications/api/v2/notifications?format=json" has X-Request-ID "f445827a-267f-414f-9209-9f59666845d7"
[OCC::AbstractNetworkJob::start OCC::JsonApiJob created for "https://oc.mydomain.com/oc" + "ocs/v2.php/apps/notifications/api/v2/notifications" "OCC::ServerNotificationHandler"
[OCC::FolderMan::startScheduledSyncSoon Starting the next scheduled sync in 0 seconds
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:OK:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "UPDATE_VIEW:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "UPDATE_VIEW:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0210)
[OCC::ownCloudGui::slotSyncStateChange Sync state changed for folder "https://oc.mydomain.com/subdir/remote.php/webdav/" : "SyncPrepare"
[OCC::Folder::startSync *** Start syncing "https://oc.mydomain.com/subdir/remote.php/webdav/" - client version 2.6.2stable-Win64 (build 20191224)
[OCC::Folder::startSync Allowing local discovery to read from the database
[OCC::FolderMan::slotFolderSyncStarted >========== Sync started for folder [oc\somedir] of account [[email protected]] with remote [https://oc.mydomain.com/subdir/remote.php/webdav/]
[OCC::SyncEngine::startSync There are 175545999360 bytes available at "C:/Users/r2/subdir/somedir/"
[OCC::SyncEngine::startSync Sync with existing sync journal
[OCC::SyncEngine::startSync "Using Qt 5.12.5 SSL library OpenSSL 1.1.1d 10 Sep 2019 on Windows 10 (10.0)"
[OCC::SyncEngine::startSync Using Selective Sync
[OCC::SyncEngine::startSync #### Discovery start ####################################################
[OCC::SyncEngine::startSync Server "18.0.0.10"
[csync_update ## Starting local discovery ##
[fill_tree_from_db 2807 entries read below path from db.
[csync_update Update detection for local replica took 0.019 seconds walking 2807 files
[csync_update ## Starting remote discovery ##
[OCC::AccessManager::createRequest 6 "PROPFIND" "https://oc.mydomain.com/subdir/remote.php/webdav/" has X-Request-ID "36cd03b9-113d-44c0-b307-22bc2592bac2"
[OCC::AbstractNetworkJob::start OCC::LsColJob created for "https://oc.mydomain.com/oc" + "" "OCC::DiscoverySingleDirectoryJob"
[OCC::WebFlowCredentials::slotFinished request finished
[OCC::JsonApiJob::finished JsonApiJob of QUrl("https://oc.mydomain.com/subdir/ocs/v2.php/apps/notifications/api/v2/notifications?format=json") FINISHED WITH STATUS "OK"
[OCC::JsonApiJob::finished Nothing changed so nothing to retrieve - status code: 304
[OCC::ServerNotificationHandler::slotNotificationsReceived Status code 304 Not Modified - No new notifications.
[OCC::WebFlowCredentials::slotFinished request finished
[OCC::LsColJob::finished LSCOL of QUrl("https://oc.mydomain.com/subdir/remote.php/webdav/") FINISHED WITH STATUS "OK"
...
[fill_tree_from_db 13 entries read below path local from db.
[_csync_detect_update Database entry found for r2, compare: 1579890418 <-> 1579890379, etag: 5e2b36f26d87a <-> 5e2b36cbd66c6, inode: 0 <-> 9814, size: 0 <-> 0, perms: fd <-> fd, checksum: <-> , ignore: 0, e2e:
[_csync_detect_update file: r2, instruction: INSTRUCTION_EVAL <<=
[OCC::AccessManager::createRequest 6 "PROPFIND" "https://oc.mydomain.com/subdir/remote.php/webdav/r2" has X-Request-ID "5f79f151-905f-4752-af33-35a20bb9875a"
[OCC::AbstractNetworkJob::start OCC::LsColJob created for "https://oc.mydomain.com/oc" + "/r2" "OCC::DiscoverySingleDirectoryJob"
[OCC::WebFlowCredentials::slotFinished request finished
[OCC::LsColJob::finished LSCOL of QUrl("https://oc.mydomain.com/subdir/remote.php/webdav/r2") FINISHED WITH STATUS "OK"
...
[_csync_detect_update Checking for rename based on fileid 0008595750d74b05873f4
[_csync_detect_update file: r2/readme.md, instruction: INSTRUCTION_NEW <<=
...
[csync_ftw <= Closing walk for r2 with read_from_db 0
[_csync_detect_update Database entry found for readme.md, compare: 1579798661 <-> 1579798661, etag: c94050313f85215ee1b3664f9d4613de <-> c94050313f85215ee1b3664f9d4613de, inode: 0 <-> 40955, size: 1 <-> 1, perms: 9f <-> 9f, checksum: <-> , ignore: 0, e2e:
[_csync_detect_update file: readme.md, instruction: INSTRUCTION_NONE <<=
...
[csync_ftw <= Closing walk for with read_from_db 0
[csync_update Update detection for remote replica took 0.406 seconds walking 2810 files
[OCC::SyncEngine::slotDiscoveryJobFinished #### Discovery end #################################################### 451 ms
[csync_reconcile Reconciliation for local replica took 0 seconds visiting 2807 files.
[_csync_merge_algorithm_visitor INSTRUCTION_NEW server file: r2/Readme.md
[_csync_merge_algorithm_visitor INSTRUCTION_UPDATE_METADATA server dir: r2
[_csync_merge_algorithm_visitor INSTRUCTION_NEW server file: r2/README.md
[_csync_merge_algorithm_visitor INSTRUCTION_NEW server file: r2/readme.md
[csync_reconcile Reconciliation for remote replica took 0.001 seconds visiting 2810 files.
[OCC::SyncEngine::slotDiscoveryJobFinished #### Reconcile end #################################################### 455 ms
[OCC::SyncEngine::slotDiscoveryJobFinished Permissions of the root folder: "DNVCKR"
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:OK:C:\\Users\\r2\\oc\\somedir\\r2" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:SYNC:C:\\Users\\r2\\oc\\somedir\\r2" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:SYNC:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:SYNC:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0150)
[OCC::SyncEngine::slotDiscoveryJobFinished #### Post-Reconcile end #################################################### 467 ms
[OCC::Folder::slotSyncStarted #### Propagation start ####################################################
[OCC::ownCloudGui::slotSyncStateChange Sync state changed for folder "https://oc.mydomain.com/subdir/remote.php/webdav/" : "Sync Running"
[OCC::PropagateItemJob::scheduleSelfOrChild Starting INSTRUCTION_NEW propagation of "r2/README.md" by OCC::PropagateDownloadFile(0x28009b3bf90)
[OCC::AccessManager::createRequest 2 "" "https://oc.mydomain.com/subdir/remote.php/webdav/r2/README.md" has X-Request-ID "744c5832-b365-427d-abf2-67ad47a5cde7"
[OCC::AbstractNetworkJob::start OCC::GETFileJob created for "https://oc.mydomain.com/oc" + "/r2/README.md" "OCC::PropagateDownloadFile"
[OCC::PropagateItemJob::scheduleSelfOrChild Starting INSTRUCTION_NEW propagation of "r2/Readme.md" by OCC::PropagateDownloadFile(0x28009b3b270)
[OCC::AccessManager::createRequest 2 "" "https://oc.mydomain.com/subdir/remote.php/webdav/r2/Readme.md" has X-Request-ID "f870b08a-1737-4512-84c2-75081cd69fbc"
[OCC::AbstractNetworkJob::start OCC::GETFileJob created for "https://oc.mydomain.com/oc" + "/r2/Readme.md" "OCC::PropagateDownloadFile"
[OCC::PropagateItemJob::scheduleSelfOrChild Starting INSTRUCTION_NEW propagation of "r2/readme.md" by OCC::PropagateDownloadFile(0x28009b3bae0)
[OCC::AccessManager::createRequest 2 "" "https://oc.mydomain.com/subdir/remote.php/webdav/r2/readme.md" has X-Request-ID "eaeeff35-96a2-4761-b9df-cb1fc4c2806a"
[OCC::AbstractNetworkJob::start OCC::GETFileJob created for "https://oc.mydomain.com/oc" + "/r2/readme.md" "OCC::PropagateDownloadFile"
[OCC::WebFlowCredentials::slotFinished request finished
[OCC::ComputeChecksum::start Computing "SHA1" checksum of "C:/Users/r2/subdir/somedir/r2/.README.md.~50c5" in a thread
[OCC::WebFlowCredentials::slotFinished request finished
[OCC::ComputeChecksum::start Computing "SHA1" checksum of "C:/Users/r2/subdir/somedir/r2/.Readme.md.~528b" in a thread
[OCC::SyncJournalDb::setFileRecord Updating file record for path: "r2/README.md" inode: 23990 modtime: 1579890405 type: 0 etag: "ae03daa2bbbcb9f035db62036ab540b3" fileId: "0008595650d74b05873f4" remotePerm: "WDNVR" fileSize: 4 checksum: "SHA1:3da541559918a808c2402bba5012f6c60b27661c" e2eMangledName: ""
[OCC::PropagateItemJob::done Completed propagation of "r2/README.md" by OCC::PropagateDownloadFile(0x28009b3bf90) with status 4
[OCC::ActivityWidget::slotItemCompleted Item "r2/README.md" retrieved resulted in ""
[OCC::ActivityWidget::slotItemCompleted Item "r2/README.md" retrieved successfully.
[OCC::ActivityListModel::addSyncFileItemToActivityList Successfully added to the activity list: ""
[OCC::OwncloudPropagator::localFileNameClash Detected case clash between "C:/Users/r2/subdir/somedir/r2/Readme.md" and "README.md"
[OCC::PropagateItemJob::done Could not complete propagation of "r2/Readme.md" by OCC::PropagateDownloadFile(0x28009b3b270) with status 2 and error: "File r2\\Readme.md cannot be saved because of a local file name clash!"
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:SYNC:C:\\Users\\r2\\oc\\somedir" to QLocalSocket(0x280793a0150)
[OCC::SocketListener::sendMessage Sending SocketAPI message --> "STATUS:SYNC:C:\\Users\\r2\\oc\\somedir\\r2" to QLocalSocket(0x280793a0150)
[OCC::ActivityWidget::slotItemCompleted Item "r2/Readme.md" retrieved resulted in "File r2\\Readme.md cannot be saved because of a local file name clash!"
[OCC::ActivityWidget::slotItemCompleted Item "r2/Readme.md" retrieved resulted in error "File r2\\Readme.md cannot be saved because of a local file name clash!"
[OCC::ActivityListModel::addErrorToActivityList Error successfully added to the notification list: "File r2\\Readme.md cannot be saved because of a local file name clash!"
[OCC::FolderWatcher::changeDetected Detected changes in paths: QSet("C:/Users/r2/subdir/somedir/r2/README.md")
...
[OCC::FolderMan::slotFolderSyncFinished <========== Sync finished for folder [oc\somedir] of account [[email protected]] with remote [https://oc.mydomain.com/subdir/remote.php/webdav/]
Mea culpa, the real culprit was that I was running nextcloud on a linux box but (this is what I forgot) the data directory was a Synology SMB export, which defaults to the windows way of filename case-insensitivity.
As suggested on a synology forum, the fix was to force Synology to edit /etc/samba/smb.conf and append case sensitive = yes in the [global] section.
Related issue: #1204, though that suggests (1) specific to the Notes app, and (2) affected by a Veracrypt encrypted volume on the windows side.
Expected behaviour
When using the new Workspaces, a single
Readme.md
file (in whatever case) is referenced (and the filename case preserved).Actual behaviour
When a
Readme.md
file is created on the server, the windows client then requests/syncs all three ofREADME.md
,Readme.md
, andreadme.md
. Since windows' filesystem is not case-sensitive, this causes collisions and errors. While this does not prevent syncing of other files/folders, it does produce an error (and notification) every time the client attempts to sync.Steps to reproduce
Readme.md
file (regardless of content).Client configuration
Client version: 2.6.2stable-Win64 (build 20191224)
Operating system: win10 (64)
OS language: english
Installation path of client:
C:\Program Files\Nextcloud\nextcloud.exe
Server configuration
Nextcloud version: 18.0.0
Storage backend (external storage): none
Logs
1. Client logfile:
2. Web server error log:
nextcloud.log
The text was updated successfully, but these errors were encountered: