NastuzziSamy / files_external_gdrive

[BETA - UNSTABLE] GDrive external storage for NextCloud
GNU Affero General Public License v3.0
78 stars 24 forks source link

Files not being pulled from GoogleDrive #20

Open jethrobelman opened 6 years ago

jethrobelman commented 6 years ago

I have installed External storage for Google Drive via appstore today for my Nextcloud setup:

Nextcloud version: 13.0.4 Operating system and version: CloudLinux (3.10.0-714.10.2.lve1.5.15.el7.x86_64) / Shared hosting Apache: 2.4.33 PHP version: 7.1.17 MySQL Version: 5.6.39

Everything went smooth for setup and green light shows. GoogleDrive folder was created but it is empty.

I receive the following error in Nextcloud logging:

League\Flysystem\FileNotFoundException: File not found at path: 26/02

"reqId":"WyWoVTCNri2HtrN7DuzTyAAAAIE","level":3,"time":"2018-06-17T00:16:56+00:00","remoteAddr":"IP_ADDRESS_REMOVED","user":"admin","app":"no app in context","method":"GET","url":"\/nextcloud\/ocs\/v2.php\/apps\/files_sharing\/api\/v1\/shares?format=json&path=%2FGoogleDrive&shared_with_me=true","message":"Exception: {\"Exception\":\"League\\\\Flysystem\\\\FileNotFoundException\",\"Message\":\"File not found at path: 26\\\/02\",\"Code\":0,\"Trace\":\"#0 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Flysystem.php(81): OCA\\\\Files_external_gdrive\\\\Storage\\\\Flysystem->buildPath('26\\\/02\\\/2012 11:4...')\\n#1 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Common.php(131): OC\\\\Files\\\\Storage\\\\Flysystem->file_exists('26\\\/02\\\/2012 11:4...')\\n#2 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Common.php(165): OC\\\\Files\\\\Storage\\\\Common->isReadable('26\\\/02\\\/2012 11:4...')\\n#3 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Common.php(662): OC\\\\Files\\\\Storage\\\\Common->getPermissions('26\\\/02\\\/2012 11:4...')\\n#4 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Wrapper\\\/Wrapper.php(581): OC\\\\Files\\\\Storage\\\\Common->getMetaData('26\\\/02\\\/2012 11:4...')\\n#5 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Wrapper\\\/PermissionsMask.php(145): OC\\\\Files\\\\Storage\\\\Wrapper\\\\Wrapper->getMetaData('26\\\/02\\\/2012 11:4...')\\n#6 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Wrapper\\\/Wrapper.php(581): OC\\\\Files\\\\Storage\\\\Wrapper\\\\PermissionsMask->getMetaData('26\\\/02\\\/2012 11:4...')\\n#7 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Wrapper\\\/Availability.php(463): OC\\\\Files\\\\Storage\\\\Wrapper\\\\Wrapper->getMetaData('26\\\/02\\\/2012 11:4...')\\n#8 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Storage\\\/Wrapper\\\/Wrapper.php(581): OC\\\\Files\\\\Storage\\\\Wrapper\\\\Availability->getMetaData('26\\\/02\\\/2012 11:4...')\\n#9 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Cache\\\/Scanner.php(112): OC\\\\Files\\\\Storage\\\\Wrapper\\\\Wrapper->getMetaData('26\\\/02\\\/2012 11:4...')\\n#10 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Cache\\\/Scanner.php(150): OC\\\\Files\\\\Cache\\\\Scanner->getData('26\\\/02\\\/2012 11:4...')\\n#11 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Cache\\\/Scanner.php(438): OC\\\\Files\\\\Cache\\\\Scanner->scanFile('26\\\/02\\\/2012 11:4...', 3, '360', NULL, true)\\n#12 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Cache\\\/Scanner.php(406): OC\\\\Files\\\\Cache\\\\Scanner->handleChildren('', false, 3, '360', true, -1)\\n#13 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Cache\\\/Scanner.php(338): OC\\\\Files\\\\Cache\\\\Scanner->scanChildren('', false, 3, '360', true)\\n#14 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/View.php(1326): OC\\\\Files\\\\Cache\\\\Scanner->scan('', false)\\n#15 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/View.php(1369): OC\\\\Files\\\\View->getCacheEntry(Object(OCA\\\\Files_Trashbin\\\\Storage), '', '\\\/admin\\\/files\\\/Go...')\\n#16 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Node\\\/Root.php(198): OC\\\\Files\\\\View->getFileInfo('\\\/admin\\\/files\\\/Go...')\\n#17 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Files\\\/Node\\\/Folder.php(133): OC\\\\Files\\\\Node\\\\Root->get('\\\/admin\\\/files\\\/Go...')\\n#18 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/apps\\\/files_sharing\\\/lib\\\/Controller\\\/ShareAPIController.php(603): OC\\\\Files\\\\Node\\\\Folder->get('\\\/GoogleDrive')\\n#19 [internal function]: OCA\\\\Files_Sharing\\\\Controller\\\\ShareAPIController->getShares('true', 'false', 'false', '\\\/GoogleDrive', 'false')\\n#20 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/AppFramework\\\/Http\\\/Dispatcher.php(161): call_user_func_array(Array, Array)\\n#21 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/AppFramework\\\/Http\\\/Dispatcher.php(91): OC\\\\AppFramework\\\\Http\\\\Dispatcher->executeController(Object(OCA\\\\Files_Sharing\\\\Controller\\\\ShareAPIController), 'getShares')\\n#22 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/AppFramework\\\/App.php(115): OC\\\\AppFramework\\\\Http\\\\Dispatcher->dispatch(Object(OCA\\\\Files_Sharing\\\\Controller\\\\ShareAPIController), 'getShares')\\n#23 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/AppFramework\\\/Routing\\\/RouteActionHandler.php(47): OC\\\\AppFramework\\\\App::main('OCA\\\\\\\\Files_Shari...', 'getShares', Object(OC\\\\AppFramework\\\\DependencyInjection\\\\DIContainer), Array)\\n#24 [internal function]: OC\\\\AppFramework\\\\Routing\\\\RouteActionHandler->__invoke(Array)\\n#25 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/lib\\\/private\\\/Route\\\/Router.php(297): call_user_func(Object(OC\\\\AppFramework\\\\Routing\\\\RouteActionHandler), Array)\\n#26 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/ocs\\\/v1.php(78): OC\\\\Route\\\\Router->match('\\\/ocsapp\\\/apps\\\/fi...')\\n#27 \\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/ocs\\\/v2.php(24): require_once('\\\/home\\\/foundint\\\/...')\\n#28 {main}\",\"File\":\"\\\/home\\\/foundint\\\/public_html\\\/nextcloud\\\/apps\\\/files_external_gdrive\\\/lib\\\/Storage\\\/Flysystem.php\",\"Line\":85}","userAgent":"Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/66.0.3359.181 Safari\/537.36","version":"13.0.4.0"}

I'm not sure if the initial sync will just take sometime? I have approx 30 folders, 3.8GB of files in Drive in total.

I wonder if you can help with this? Many thanks for taking the time to develop this integration!

jethrobelman commented 6 years ago

Update: I can see Google receiving API traffic but now instead of seeing no files from within the browser for the GoogleDrive folder I get an error:

/nextcloud/remote.php/webdav/GoogleDrive:1 Failed to load resource: the server responded with a status of 500 (Internal Server Error) client.js?v=0dbc35c0-7:421 Uncaught (in promise) TypeError: Cannot read property 'getElementsByTagNameNS' of null at Client._getSabreException (client.js?v=0dbc35c0-7:421) at client.js?v=0dbc35c0-7:485

I've asked my provider to check the apache logs to try and determine if i'm hitting a FW rule or limitation.

In regards to the NC logs i'm including from when I setup in the hope this helps: https://gist.github.com/jethrobelman/5fb3f42df59de28a829ba9833cb0aee6

ferdiga commented 6 years ago

I end up with "no files in here" I migrated from owncloud and didn't change the the naming to nextcloud ... and an error "Q2TkyZlXtRL9GZDrETDg","level":3,"time":"2018-07-21T09:30:03+00:00","remoteAddr":"","user":"--","app":"core","method":"--","url":"--","message":"Error while running background job (class: OC\Settings\RemoveOrphaned, arguments: ): {\"Exception\":\"OCP\\AutoloadNotAllowedException\",\"Message\":\"Autoload path not allowed: \\/var\\/www\\/owncloud\\/apps\\/ojsxc\\/settings\\/personal.php\",\"Code\":0,\"Trace\":\"#0 \\/var\\/www\\/owncloud\\/lib\\/autoloader.php(158): OC\\Autoloader->isValidPath('\\/var\\/www\\/ownclo...')\n#1 [internal function]: OC\\Autoloader->load('OCA\\\\OJSXC\\\\Setti...')\n#2 [internal function]: spl_autoload_call('OCA\\\\OJSXC\\\\Setti...')\n#3 \\/var\\/www\\/owncloud\\/lib\\/private\\/AppFramework\\/Utility\\/SimpleContainer.php(95): ReflectionClass->__construct('OCA\\\\OJSXC\\\\Setti...')\n#4 \\/var\\/www\\/owncloud\\/lib\\/private\\/AppFramework\\/Utility\\/SimpleContainer.php(118): OC\\AppFramework\\Utility\\SimpleContainer->resolve('OCA\\\\OJSXC\\\\Setti...')\n#5 \\/var\\/www\\/owncloud\\/lib\\/private\\/ServerContainer.php(132): OC\\AppFramework\\Utility\\SimpleContainer->query('OCA\\\\OJSXC\\\\Setti...')\n#6 \\/var\\/www\\/owncloud\\/lib\\/private\\/Settings\\/Manager.php(201): OC\\ServerContainer->query('OCA\\\\OJSXC\\\\Setti...')\n#7 \\/var\\/www\\/owncloud\\/lib\\/private\\/Settings\\/RemoveOrphaned.php(86): OC\\Settings\\Manager->checkForOrphanedClassNames()\n#8 \\/var\\/www\\/owncloud\\/lib\\/private\\/BackgroundJob\\/Job.php(61): OC\\Settings\\RemoveOrphaned->run(NULL)\n#9 \\/var\\/www\\/owncloud\\/lib\\/private\\/BackgroundJob\\/TimedJob.php(55): OC\\BackgroundJob\\Job->execute(Object(OC\\BackgroundJob\\JobList), Object(OC\\Log))\n#10 \\/var\\/www\\/owncloud\\/lib\\/private\\/Settings\\/RemoveOrphaned.php(70): OC\\BackgroundJob\\TimedJob->execute(Object(OC\\BackgroundJob\\JobList), Object(OC\\Log))\n#11 \\/var\\/www\\/owncloud\\/cron.php(123): OC\\Settings\\RemoveOrphaned->execute(Object(OC\\BackgroundJob\\JobList), Object(OC\\Log))\n#12 {main}\",\"File\":\"\\/var\\/www\\/owncloud\\/lib\\/autoloader.php\",\"Line\":134}","userAgent":"--","version":"13.0.2.1"} {"reqId":"CEMjACWw24BH5shOQOl1","level":3,"time":"2018-07-21T09:30:52+00:00","remoteAddr":"MY IP","user":"ass","app":"PHP","method":"GET","url":"\/owncloud\/index.php\/204","message":"Module 'apcu' already loaded at Unknown#0","userAgent":"Mozilla\/5.0 (Android) ownCloud-android\/3.2.1","version":"13.0.2.1"}

mammuth commented 5 years ago

I'm experiencing the same issue with NC13. I don't see the list of files in the external storage view in NC nor can I create / copy files in the Drive folder.

NastuzziSamy commented 5 years ago

I got no issues on a fresh installation, I am waiting for your feedbacks before closing this issue

schmitmd commented 5 years ago

This is (almost) definitely a parsing issue with files in Google Drive containing slashes in their filenames. If you rename the files to exclude the "/" character, it seems to work ok.

violoncelloCH commented 5 years ago

yeah, looks like what I've just reported here: #49