Google Drive issue affecting a significant subset of users
Apologies for the long post...this is a bit of a cry for help...is there a support group for programmers&#x2F;admins that have been bitten by the Drive cool aide?<p>My organisation did a migration to Google Drive (from internal Windows server) in the last few months.  I&#x27;ve had quite a few issues (I&#x27;m the administrator).<p>I&#x27;m posting this (abridged) laundry list of problems here...would love to have some feedback or pointers to what&#x27;s wrong or what I&#x27;m doing wrong.  When I&#x27;ve managed to get through to Google Drive tech support I don&#x27;t get much in the way of answers.<p>For context, I&#x27;ll confine this to just two central share accounts:  fileshare@mydomain and records@mydomain.  Each account has around 1.5 terabytes of files.  Our org has 85 G-suite accounts (users). This is a small to mid sized business.<p>* I&#x27;ll mostly skip the part of how difficult, slow and expensive a process it was to get around 3 terabytes into Google Drive.  rclone was a good friend to us.  It took months as we had to constantly re-sync as we migrate....we are running a business while we migrate.  I&#x27;ll also mostly skip the problems we had with the Drive sync client...its default behavior is to sync everything.  I had to globally disable usage of this tool.  Guess what happens to your company network when 50 users install the sync tool and click &quot;add to drive&quot; for the company fileshare.  Good luck educating users with a wide range of PC skills on proper sync usage.<p>* Drive&#x27;s file sharing operations are opaque and take an indeterminate amount of time to complete a share (could take days).  If I need to restrict access to a large subset of files, I have no idea when the share is complete.  I have found that sometimes it does not complete for all users and I&#x27;m left with some files not shared.  I can&#x27;t find a pattern.  I have no tools to help me find what (under a large set of folders) didn&#x27;t get shared. If a user or me as admin needs to unshare, this can take days.  So there is no practical way to protect sensitive access files except put them in different root folders or different share account.<p>* No practical way to get a backup.  I&#x27;m trying spanning backup at the moment.  Its been running against my fileshare account all week.  The spanning backup console tells me I have about 100 days to wait to complete the initial backup.  Yeah, 100 days to backup 1.5 terabytes.  What&#x27;s the use of unlimited storage if I can&#x27;t protect it?  In this case, I&#x27;m suspecting Google Drive, not Spanning as I&#x27;ve become familiar with how performance variant the Google Drive API is.<p>* Google Drive allows an end user to easily do &quot;destructive&quot; things to the central file share.  Last Friday I received a call from a staff.  She knew something bad just happened and quickly reached out for support.  She had accidentally used the move or delete operation in the Drive UI to cut out a huge subset of our fileshare.  I say &quot;move or delete&quot; because she didn&#x27;t know and as an admin I couldn&#x27;t figure out what happened. I dug around both the fileshare account and her account and couldn&#x27;t find the files.  The Trash folder on both accounts was empty.  This didn&#x27;t make sense as the activity panel clearly showed her and other users deleting things.  At first the Trash view returned a server error.  I refreshed my browser and got it to show.  Empty.  I tracked through the activity list and found the operation of concern....it showed the folder had been removed.  Fortunately, I was able to click on the folder in the activity panel and it took me to it.  From what I could tell, the files were in the system, but not attached to anything...no parent folder, not marked as deleted or moved.  I was able to move this unattached folder under a new temp folder at the root of the fileshare account.  Then go to that folder and move it again back to its original place.  Then we wait...for the removed share permissions to fall back into place.  Good thing this happened late on Friday as we had the weekend to wait for the shares to come back.<p>* The Google Drive API is slow and unstable.  I&#x27;m a programmer.  We spent quite a bit of time writing a system to push files from our records management system to our Google Drive records account.  Currently, we are adding less than 1000 files a day; mostly mid sized jpg&#x27;s (1 to 3mb).  So well below our API limit of 1 billion requests a day.  Our server using the drive API tracks errors.  Currently, around 1&#x2F;3 of the uploads fail and need to be retried up to 10 times.  Some never make it and we have to handle it manually.  Good thing we wrote this in Elixir&#x2F;Erlang as fault tolerance on the API client is our friend.<p>* The Google Drive API is &quot;global&quot;.  When you create a service account (Google&#x27;s API method for server to server communication), you give access for the scope of the API but not the account.  Our system needs read&#x2F;write access to only the records account.  No can do.  You have to give your API keys full read&#x2F;write access to every account.  So yeah, your dev and test systems have full access to all production data.  Better be a very careful programmer.  If you mess something up in dev, you could mess up your production drive accounts.<p>* Combine these API problems with the inability to do a backup (and restore as well as restore to a test account) in any reasonable amount of time...and you can throw away your discipline of separating dev from production and being able to run repeatable tests before deployment.<p>I&#x27;m going to spend the rest of my day reviewing code with a programmer.  The code is to refactor our folder structure in our records account.  It shouldn&#x27;t delete anything...just move lots of folders into a new structure.  But if we have just one bug in our migration scripts, well who knows.  So I&#x27;ll be reviewing code today and on pins and needles Saturday while our migration script runs on our production drive.