{"action":"created","issue":{"url":"https://api.github.com/repos/owncloud/core/issues/20481","repository_url":"https://api.github.com/repos/owncloud/core","labels_url":"https://api.github.com/repos/owncloud/core/issues/20481/labels{/name}","comments_url":"https://api.github.com/repos/owncloud/core/issues/20481/comments","events_url":"https://api.github.com/repos/owncloud/core/issues/20481/events","html_url":"https://github.com/owncloud/core/issues/20481","id":116570925,"number":20481,"title":"External Storage: Google Drive: 403 User Rate Limit Exceeded","user":{"login":"swurzinger","id":6787397,"avatar_url":"https://avatars.githubusercontent.com/u/6787397?v=3","gravatar_id":"","url":"https://api.github.com/users/swurzinger","html_url":"https://github.com/swurzinger","followers_url":"https://api.github.com/users/swurzinger/followers","following_url":"https://api.github.com/users/swurzinger/following{/other_user}","gists_url":"https://api.github.com/users/swurzinger/gists{/gist_id}","starred_url":"https://api.github.com/users/swurzinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/swurzinger/subscriptions","organizations_url":"https://api.github.com/users/swurzinger/orgs","repos_url":"https://api.github.com/users/swurzinger/repos","events_url":"https://api.github.com/users/swurzinger/events{/privacy}","received_events_url":"https://api.github.com/users/swurzinger/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/owncloud/core/labels/app:files_external","name":"app:files_external","color":"02d7e1"},{"url":"https://api.github.com/repos/owncloud/core/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/owncloud/core/labels/sev1-critical","name":"sev1-critical","color":"fc2929"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/owncloud/core/milestones/62","html_url":"https://github.com/owncloud/core/milestones/9.1-current","labels_url":"https://api.github.com/repos/owncloud/core/milestones/62/labels","id":1322460,"number":62,"title":"9.1-current","description":"","creator":{"login":"MorrisJobke","id":245432,"avatar_url":"https://avatars.githubusercontent.com/u/245432?v=3","gravatar_id":"","url":"https://api.github.com/users/MorrisJobke","html_url":"https://github.com/MorrisJobke","followers_url":"https://api.github.com/users/MorrisJobke/followers","following_url":"https://api.github.com/users/MorrisJobke/following{/other_user}","gists_url":"https://api.github.com/users/MorrisJobke/gists{/gist_id}","starred_url":"https://api.github.com/users/MorrisJobke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MorrisJobke/subscriptions","organizations_url":"https://api.github.com/users/MorrisJobke/orgs","repos_url":"https://api.github.com/users/MorrisJobke/repos","events_url":"https://api.github.com/users/MorrisJobke/events{/privacy}","received_events_url":"https://api.github.com/users/MorrisJobke/received_events","type":"User","site_admin":false},"open_issues":668,"closed_issues":949,"state":"open","created_at":"2015-09-24T16:30:14Z","updated_at":"2016-06-01T17:00:21Z","due_on":null,"closed_at":null},"comments":20,"created_at":"2015-11-12T15:21:41Z","updated_at":"2016-06-02T08:06:49Z","closed_at":"2016-06-01T13:29:56Z","body":"### Steps to reproduce\r\n1. Set up Google Drive as external Storage. In my case I was accessing via a shared (sub)folder\r\n2. Upload a lot of files to that folder e.g. using the ownCloud client (probably also download?) \r\n3. Errors will occur if more than e.g. 10 requests/second\r\n\r\n### Expected behaviour\r\nFiles should be uploaded without errors.\r\n\r\n### Actual behaviour\r\nError: **(403) User Rate Limit Exceeded**\r\n\r\nGoogle Drive has a limitation of maximum requests per second, that is set to 10 max according to Google's API documentation and the (max) value set in the Google Developer Console.\r\n\r\nAccording to Google's documentation an application should implement exponential backoff when it gets that error, see https://developers.google.com/drive/web/handle-errors#implementing_exponential_backoff\r\n\r\nAlthough owncloud/google returns a 403 error the upload succeeds sometimes, see also http://stackoverflow.com/questions/18578768/403-rate-limit-on-insert-sometimes-succeeds\r\n\r\nFinally the owncloud client uploaded all my files successfully, I guess it has retried the ones that failed initially.\r\n\r\n\r\n### Server configuration\r\n**Operating system**:\r\nLinux af91f 2.6.32-504.8.1.el6.x86_64 \r\n**Web server:**\r\nApache (unknown version; shared hosting provider)\r\n**Database:**\r\n5.5.46 - MySQL Community Server\r\n**PHP version:**\r\nPHP Version 5.4.45\r\n**ownCloud version:** (see ownCloud admin page)\r\nownCloud 8.2.0 (stable) \r\n**Updated from an older ownCloud or fresh install:**\r\nfresh install\r\n**List of activated apps:**\r\ndefault + external storage\r\n\r\n**The content of config/config.php:**\r\n[config.txt](https://github.com/owncloud/core/files/33002/config.txt)\r\n\r\n**Are you using external storage, if yes which one:** local/smb/sftp/...\r\nYes, Google Drive.\r\n\r\n**Are you using encryption:** yes/no\r\nNo\r\n\r\n**Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/...\r\nNo\r\n\r\n### Client configuration\r\n**Browser:**\r\nirrelevant\r\n\r\n**Operating system:**\r\nirrelevant; in my case it was a Windows XP Virtual Machine\r\n\r\n### Logs\r\n#### Web server error log\r\nempty\r\n\r\n#### ownCloud log (data/owncloud.log)\r\n[owncloud.txt](https://github.com/owncloud/core/files/32994/owncloud.txt)\r\n\r\n#### Browser log\r\nirrelevant\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/owncloud/core/issues/comments/223223603","html_url":"https://github.com/owncloud/core/issues/20481#issuecomment-223223603","issue_url":"https://api.github.com/repos/owncloud/core/issues/20481","id":223223603,"user":{"login":"PVince81","id":277525,"avatar_url":"https://avatars.githubusercontent.com/u/277525?v=3","gravatar_id":"","url":"https://api.github.com/users/PVince81","html_url":"https://github.com/PVince81","followers_url":"https://api.github.com/users/PVince81/followers","following_url":"https://api.github.com/users/PVince81/following{/other_user}","gists_url":"https://api.github.com/users/PVince81/gists{/gist_id}","starred_url":"https://api.github.com/users/PVince81/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PVince81/subscriptions","organizations_url":"https://api.github.com/users/PVince81/orgs","repos_url":"https://api.github.com/users/PVince81/repos","events_url":"https://api.github.com/users/PVince81/events{/privacy}","received_events_url":"https://api.github.com/users/PVince81/received_events","type":"User","site_admin":false},"created_at":"2016-06-02T08:06:49Z","updated_at":"2016-06-02T08:06:49Z","body":"Kudos to @altyr for submitting the library update PR https://github.com/owncloud/core/pull/24516 :smile: "}}
{"actor":{"display_login":"PVince81"}}