liberodark / ODrive

Google Drive GUI for Windows / Mac / Linux
https://liberodark.github.io/ODrive/
GNU General Public License v3.0
1.15k stars 136 forks source link

[BUG] ODrive corrupted my file on Googledrive #134

Open nophead opened 5 years ago

nophead commented 5 years ago

Describe the bug ODrive replaced the contents of one of my files with a JSON exception and wrote it back to GoogleDrive without changing the date so I have no idea when it did this.

To Reproduce No idea.

Expected behavior File contents should not be corrupted.

Screenshots

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "authError",
    "message": "Invalid Credentials",
    "locationType": "header",
    "location": "Authorization"
   }
  ],
  "code": 401,
  "message": "Invalid Credentials"
 }
}

Desktop

Additional context The file happened to be part of an XML database so the program that parsed it threw an error. I have no idea if any of my tens of thousands of other files has been trashed.

nophead commented 5 years ago

The name of the corrupted file is Assert.palmerc, so I don't know if that was an ironic coincidence or somehow created the bug.

nophead commented 5 years ago

Another file simply has this in it:

Service Unavailable
nophead commented 5 years ago

Comparing 21,195 Files in 2,604 Folders with a backup I made before trying ODRIVE it seems that only the two files I mentioned are corrupt.

yuhc commented 5 years ago

Thanks for sharing @nophead . This is really a severe bug and makes me pause using odrive. I'd wait and look forward to the analysis and fix of this issue.

nophead commented 5 years ago

Yes I have had to stop using it as it is the worst possible bug. It must not be checking a return status at some point and takes the error message as the file contents.

liberodark commented 5 years ago

Better to use the 0.2.1 version is more stable

pmarrapese commented 5 years ago

I ran into this too on 0.3.0.

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "internalError",
    "message": "Internal Error"
   }
  ],
  "code": 500,
  "message": "Internal Error"
 }
}
pmarrapese commented 5 years ago

This is happening on 0.2.1 as well...

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "userRateLimitExceeded",
    "message": "User Rate Limit Exceeded. Rate of requests for user exceed configured project quota. You may consider re-evaluating expected per-user traffic to the API and adjust project quota limits accordingly. You may monitor aggregate quota usage and adjust limits in the API Console: https://console.developers.google.com/apis/api/drive.googleapis.com/quotas?project=985525764653",
    "extendedHelp": "https://console.developers.google.com/apis/api/drive.googleapis.com/quotas?project=985525764653"
   }
  ],
  "code": 403,
  "message": "User Rate Limit Exceeded. Rate of requests for user exceed configured project quota. You may consider re-evaluating expected per-user traffic to the API and adjust project quota limits accordingly. You may monitor aggregate quota usage and adjust limits in the API Console: https://console.developers.google.com/apis/api/drive.googleapis.com/quotas?project=985525764653"
 }
}
nophead commented 5 years ago

Yes I couldn't use the 0.2.1 version because of the rate limit problem. As this bug states I used the latest HEAD with my own patch for the rate limit bug that I detail here: https://github.com/liberodark/ODrive/issues/99#issuecomment-525251036

I presume this bug is caused by not checking an error return value somewhere.

liberodark commented 4 years ago

Yeah is a API limit. Google make a limite from the API for download files / make request. Is a big problem. One google not have native client and two is make a limit for projects...

cserpell commented 4 years ago

Does Google Drive keep a copy of the old file in history when browsing through web client?

nophead commented 4 years ago

Where would I find a file history?

The problem is I have 20000 files on Google drive, how would I know when one gets randomly corrupted? I only noticed because it was an part of a database and the reader told me it was corrupt. Fortunately I had a backup.

cserpell commented 4 years ago

I get your point. Just for the record, when browsing your files, click over one and at the right hand side, there is an "Activity" panel with versions.

mihafiz commented 4 years ago

I'm not using odrive because of this. Critically serious bug still open and unresolved!

nophead commented 4 years ago

I moved on to InSync. Not free but a one off payment and seems on a par with Google's backup and sync.