{"action":"closed","issue":{"url":"https://api.github.com/repos/owncloud/client/issues/5116","repository_url":"https://api.github.com/repos/owncloud/client","labels_url":"https://api.github.com/repos/owncloud/client/issues/5116/labels{/name}","comments_url":"https://api.github.com/repos/owncloud/client/issues/5116/comments","events_url":"https://api.github.com/repos/owncloud/client/issues/5116/events","html_url":"https://github.com/owncloud/client/issues/5116","id":170413245,"number":5116,"title":"OS X client fails to see watcher change if sync directory is a symlink","user":{"login":"wrigjz","id":19869850,"avatar_url":"https://avatars.githubusercontent.com/u/19869850?v=3","gravatar_id":"","url":"https://api.github.com/users/wrigjz","html_url":"https://github.com/wrigjz","followers_url":"https://api.github.com/users/wrigjz/followers","following_url":"https://api.github.com/users/wrigjz/following{/other_user}","gists_url":"https://api.github.com/users/wrigjz/gists{/gist_id}","starred_url":"https://api.github.com/users/wrigjz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wrigjz/subscriptions","organizations_url":"https://api.github.com/users/wrigjz/orgs","repos_url":"https://api.github.com/users/wrigjz/repos","events_url":"https://api.github.com/users/wrigjz/events{/privacy}","received_events_url":"https://api.github.com/users/wrigjz/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/owncloud/client/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/owncloud/client/labels/ReadyToTest","name":"ReadyToTest","color":"5319e7"},{"url":"https://api.github.com/repos/owncloud/client/labels/sev3-medium","name":"sev3-medium","color":"fc2929"}],"state":"closed","locked":false,"assignee":{"login":"guruz","id":959327,"avatar_url":"https://avatars.githubusercontent.com/u/959327?v=3","gravatar_id":"","url":"https://api.github.com/users/guruz","html_url":"https://github.com/guruz","followers_url":"https://api.github.com/users/guruz/followers","following_url":"https://api.github.com/users/guruz/following{/other_user}","gists_url":"https://api.github.com/users/guruz/gists{/gist_id}","starred_url":"https://api.github.com/users/guruz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guruz/subscriptions","organizations_url":"https://api.github.com/users/guruz/orgs","repos_url":"https://api.github.com/users/guruz/repos","events_url":"https://api.github.com/users/guruz/events{/privacy}","received_events_url":"https://api.github.com/users/guruz/received_events","type":"User","site_admin":false},"assignees":[{"login":"guruz","id":959327,"avatar_url":"https://avatars.githubusercontent.com/u/959327?v=3","gravatar_id":"","url":"https://api.github.com/users/guruz","html_url":"https://github.com/guruz","followers_url":"https://api.github.com/users/guruz/followers","following_url":"https://api.github.com/users/guruz/following{/other_user}","gists_url":"https://api.github.com/users/guruz/gists{/gist_id}","starred_url":"https://api.github.com/users/guruz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guruz/subscriptions","organizations_url":"https://api.github.com/users/guruz/orgs","repos_url":"https://api.github.com/users/guruz/repos","events_url":"https://api.github.com/users/guruz/events{/privacy}","received_events_url":"https://api.github.com/users/guruz/received_events","type":"User","site_admin":false},{"login":"dragotin","id":1070214,"avatar_url":"https://avatars.githubusercontent.com/u/1070214?v=3","gravatar_id":"","url":"https://api.github.com/users/dragotin","html_url":"https://github.com/dragotin","followers_url":"https://api.github.com/users/dragotin/followers","following_url":"https://api.github.com/users/dragotin/following{/other_user}","gists_url":"https://api.github.com/users/dragotin/gists{/gist_id}","starred_url":"https://api.github.com/users/dragotin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dragotin/subscriptions","organizations_url":"https://api.github.com/users/dragotin/orgs","repos_url":"https://api.github.com/users/dragotin/repos","events_url":"https://api.github.com/users/dragotin/events{/privacy}","received_events_url":"https://api.github.com/users/dragotin/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/owncloud/client/milestones/31","html_url":"https://github.com/owncloud/client/milestones/2.3.0","labels_url":"https://api.github.com/repos/owncloud/client/milestones/31/labels","id":1716523,"number":31,"title":"2.3.0","description":"","creator":{"login":"guruz","id":959327,"avatar_url":"https://avatars.githubusercontent.com/u/959327?v=3","gravatar_id":"","url":"https://api.github.com/users/guruz","html_url":"https://github.com/guruz","followers_url":"https://api.github.com/users/guruz/followers","following_url":"https://api.github.com/users/guruz/following{/other_user}","gists_url":"https://api.github.com/users/guruz/gists{/gist_id}","starred_url":"https://api.github.com/users/guruz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guruz/subscriptions","organizations_url":"https://api.github.com/users/guruz/orgs","repos_url":"https://api.github.com/users/guruz/repos","events_url":"https://api.github.com/users/guruz/events{/privacy}","received_events_url":"https://api.github.com/users/guruz/received_events","type":"User","site_admin":false},"open_issues":31,"closed_issues":88,"state":"open","created_at":"2016-04-19T08:55:00Z","updated_at":"2016-10-18T15:36:49Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2016-08-10T13:11:21Z","updated_at":"2016-10-18T15:36:49Z","closed_at":"2016-10-18T15:36:49Z","body":"<!--- \r\nPlease try to only report a bug if it happens with the latest version\r\nThe latest version can be seen by checking the ChangeLog: https://owncloud.org/changelog/desktop/\r\n\r\nFor support try: https://central.owncloud.org/c/help/desktop-file-sync\r\n--->\r\n\r\nOS X client Sync to Linux server has issues - appears to be related to the OS X users home directory being a symlink.\r\n\r\n[b]Steps to reproduce[/b]\r\n1. Add a file to ~/ownCloud directory on client\r\n2. Wait - (10 mins+) no sync 0ccurs\r\n3. Click Pause/UnPause sync and it will start to sync\r\n\r\n[b]Expected behaviour[/b]\r\nAdding a file should sync without needing to Pause/UnPause\r\n\r\n[b]Actual behaviour[/b]\r\nNo sync - we need to Pause/Unpause the client (perhaps 10 mins later) for the sync to happen to the server\r\n\r\n[b]Client configuration[/b]\r\nClient version: 2.2.3 (also 2.1, 2.2)\r\nClient operating system: OSX 10.11.6\r\n\r\n[b]Server configuration[/b]\r\nOperating system: Centos 7.2\r\nWeb server: Apache 2.4.6\r\nDatabase: mariadb 1.5.5\r\nPHP version: php5.5\r\nownCloud version (see ownCloud admin page): 9.1\r\nUpdated from an older ownCloud or fresh install: Updated from 9.0\r\nownCloud log (data/owncloud.log):\r\nN/A\r\n\r\n<b> Special configurations (external storage, external authentication, reverse proxy, server-side-encryption): </b> On the client the home directory is in one place but symlinked to somewhere else in order to match our other Linux machines. Perhaps this is messing owncloud client up?\r\n\r\n<b>Issue</b>\r\nThe client log indicates that when the file is added the first time it is ignored (although no ignore options have been set), the ignore files is given as '*' i.e. everything. This however can not be the case because pause/unpause then starts the sync.\r\n\r\n<b>Initial problem</b>\r\nI removed the ~/ownCloud directory and then mkdir ~/ownCloud (this is set in the symlinked home directory to be /home/disk3/jon/ownCloud), I then restarted the owncloud client and everything sync'd fine from the server. using this new ownCloud directory I then added a file (cp ... ~/owncloud) and it was not sync'ed to the server.\r\n\r\n<b>Debugging attempts</b>\r\nOn adding the file:\r\n08-10 13:11:33:366 0x7fe941f13500 OCC::FolderMan::slotFolderSyncFinished: <===================================== sync finished for  \"https://xxx.xxx.org/owncloud/remote.php/webdav/\"\r\n08-10 13:11:35:205 0x7fe941f13500 -[DelegateObject updaterDidNotFindUpdate:]: -[DelegateObject updaterDidNotFindUpdate:]\r\n08-10 13:11:39:794 0x7fe941f13500 OCC::callback: FolderWatcherPrivate::callback by OS X\r\n08-10 13:11:39:796 0x7fe941f13500 OCC::FolderWatcher::pathIsIgnored: * Ignoring file \"/Volumes/userdir/disk3/jon/ownCloud/sofee.jpg\"\r\n08-10 13:11:39:817 0x7fe941f13500 OCC::callback: FolderWatcherPrivate::callback by OS X\r\n08-10 13:11:39:828 0x7fe941f13500 OCC::callback: FolderWatcherPrivate::callback by OS X\r\n08-10 13:12:28:680 0x7fe941f13500 OCC::Folder::slotRunEtagJob: * Trying to check \"https://xxx.xxx.org/owncloud/remote.php/webdav/\" for changes via ETag check. (time since last sync: 55 s)\r\n08-10 13:12:28:681 0x7fe941f13500 OCC::FolderMan::slotRunOneEtagJob: Scheduling \"https://xxx.xxx.org/owncloud/remote.php/webdav/\" to check remote ETag\r\n08-10 13:12:28:682 0x7fe941f13500 OCC::AbstractNetworkJob::start: !!! OCC::RequestEtagJob created for \"https://xxx.xxx.org/owncloud\" + \"/\" \"OCC::Folder\"\r\n08-10 13:12:38:610 0x7fe941f13500 OCC::Folder::saveToSettings: Saved folder \"ownCloud\" to settings, status 0\r\n08-10 13:12:38:612 0x7fe941f13500 OCC::SocketApi::sendMessage: SocketApi:  Sending message:  \"STATUS:OK:/home/disk3/jon/ownCloud\"\r\n\r\nit see the new file sofee.jpg but ignores it for some reason (the '*' I guess it's because it only looks for the symlinked /home/disk3/jon and ignores the fact that /Volumes/userdir/disk3/jon is the original copy).\r\n\r\n<b>After Pause/UnPause</b>\r\nI then pause OC client:\r\nxxx.xxx.org/owncloud/remote.php/webdav/\" :  \"Sync Paused\"\r\n08-10 13:12:38:630 0x7fe941f13500 OCC::SocketApi::sendMessage: SocketApi:  Sending message:  \"UNREGISTER_PATH:/home/disk3/jon/ownCloud\"\r\n\r\n\r\nAfter unpausing, it sync's\r\n\r\n08-10 13:16:35:214 0x7fe941f13500 OCC::SyncEngine::startSync: =====sync with existing DB\r\n08-10 13:16:35:215 0x7fe941f13500 OCC::SyncEngine::startSync: =====Using Qt 5.4.0\r\n08-10 13:16:35:215 0x7fe941f13500 OCC::SyncEngine::startSync: =====Using SSL library version OpenSSL 1.0.2h  3 May 2016\r\n08-10 13:16:35:216 0x7fe941f13500 OCC::SyncEngine::startSync: void OCC::SyncEngine::startSync() ====NOT Using Selective Sync\r\n08-10 13:16:35:216 0x7fe941f13500 OCC::SyncEngine::startSync: #### Discovery start #################################################### >>\r\n08-10 13:16:35:217 0x7fe941f13500 OCC::SyncEngine::startSync: =====Server \"9.1.0.15\" \"rootEtagChangesNotOnlySubFolderEtags=1\"\r\n08-10 13:16:35:464 0x7fe941f13500 OCC::SocketApi::sendMessage: SocketApi:  Sending message:  \"STATUS:SYNC:/home/disk3/jon/ownCloud/sofee.jpg\"\r\n\r\n08-10 13:16:35:540 0x7fe941f13500 OCC::AbstractNetworkJob::start: !!! OCC::PUTFileJob created for \"https://xxx.xxx.org/owncloud\" + \"/sofee.jpg\" \"\"\r\n08-10 13:16:35:765 0x7fe941f13500 OCC::PropagateUploadFileQNAM::slotPutFinished: void OCC::PropagateUploadFileQNAM::slotPutFinished()  QUrl( \"https://xxx.xxx.org/owncloud/remote.php/webdav/sofee.jpg\" )  FINISHED WITH STATUS 0 \"\" QVariant(int, 201) QVariant(QString, \"Created\")\r\n08-10 13:16:35:766 0x7fe941f13500 OCC::PropagateUploadFileQNAM::slotPutFinished: *==* duration UPLOAD 985231 10 15 243\r\n08-10 13:16:35:767 0x7fe941f13500 OCC::SyncJournalFileRecord::SyncJournalFileRecord:\r\n\r\n08-10 13:16:35:837 0x7fe941f13500 OCC::ownCloudGui::slotSyncStateChange: Sync state changed for folder  \"https://xxx.xxx.org/owncloud/remote.php/webdav/\" :  \"Success\"\r\n\r\n\r\nSo here it recognised it as being in the symlinked homedirectory and syncs it.\r\n\r\n<b>Partly resolved</b>\r\nI removed the ownCloud directory, removed the config file and restart OC client, this time I set the ownCloud directory manually as /Volumes/userdir/disk3/jon/ownCloud, after all the files from the server were sync'd I then added the sofee.jpg file and it was synced immediately. Therefore the issue is something to do with there being two ways to access the client local owncloud directory and the OC client not recognising this.\r\n\r\nWhile this may seem trivial to resolve by setting up ownCloud again we have lots of users and for them when they setup they really need to jsut be able to click the default for creating the local ownCloud dir which will be the symlinked one."}}
{"actor":{"display_login":"davitol"}}