Seeing cloud files placeholders instead of real files

I’m really frustrated about this not-to-sync in order to save storage space feature. I get that it might serve some purpose for some users. But not to me. I want to download EVERYTHING. Even though I click the checkbox that says “Save and apply to new files and folders under this folder”, it doesn’t always work, particularly the files in subfolders of the subfolders. All those new versions you released mean nothing to me if you can’t fix this simple feature. I am using this software to backup my cloud storage. I can’t rely on it if it constantly fails to do what I want it to do.

Hi @dancap ,
Thanks for reaching out. Can you send a diagnostic from the odrive tray menu so that I can take a look at your current configuration?

Just sent sent sent sent

Hi @dancap ,
It looks like you have a pretty extensive data set (~62,000 folders and ~400,000 objects, total). Trying to bulk download a very large structure like this is more prone to encountering exceptions that will halt the download process.

Taking a look at the logs, I can see there is one particular file that is causing the bulk download operation to abort.

E:/odrive/Box/Dancap Accounting & Tax/# Task Lists & Management Reports & Org Chart/Accounting Task List & Outstanding List/2019 Archived/Accounting Task List as of November 1,

Box is returning a strange unexpected error for this file, which is aborting the bulk download operation when it is hit. Basically, Box is providing information on this file, but when odrive tries to use that information to download the file, Box says that the information is invalid. Because the error is not something we have seen before, the operation aborts.

I will make sure we add handling for this error so that it will put object into the “not allowed” list instead of aborting.

In the meantime, you may be able to correct this by editing the file from the Box web client, or restoring a previous version of the file to “fix” the file. You can test if Box is now allowing the ownload by going to its location in the odrive folder and performing a right-click->sync on it. Once it is okay, try executing the bulk, recursive download again.

If you look at the sync activity log, you should also see this error listed there, at the bottom.
sync activity log

OK, that file has been fixed. I right click the top folder and sync. Let’s see how it goes.

1 Like

There are still a lot cloud files. What’s stopping it now? I just sent in the diagnostics report.

Hi @dancap ,
Sorry, I missed this earlier.

It looks like there were a few times where Box was having some service issues (returning “unavailable”).

Since you have such a large data set, lets try a more 'brute force" method. This method will continue no matter what, which means you will want to keep an eye on it to make sure it doesn’t start cycling endlessly on a problem object, which can trigger Box to start rate limiting your account.

To do this you will run a couple commands from a command prompt.

Open up a command prompt by clicking on the Windows icon in the taskbar, typing “cmd”, and then clicking on “Command Prompt”.

Once the command prompt is open, copy and paste the following command in (all one line) and hit enter. This will install the CLI for us to use in the next command:

powershell -command "& {$comm_bin=\"$HOME\.odrive\common\bin\";$o_cli_bin=\"$comm_bin\odrive.exe\";(New-Object System.Net.WebClient).DownloadFile(\"\", \"$comm_bin\\");$shl=new-object -com shell.application; $shl.namespace(\"$comm_bin\").copyhere($shl.namespace(\"$comm_bin\\").items(),0x10);del \"$comm_bin\\";}"

Once the CLI is finished installing (it could take a minute or two), copy and paste this next command to perform a recursive sync of a folder. This command will download one file at a time until everything is downloaded. This is another long one-liner, so make sure you copy the whole thing, paste it in the command prompt, and hit enter:

powershell -command "& {$syncpath=\"E:\odrive\Box\";$syncbin=\"$HOME\.odrive\common\bin\odrive.exe\";while ((Get-ChildItem $syncpath -Filter \"*.cloud*\" -Recurse | Measure-Object).Count){Get-ChildItem -Path \"$syncpath\" -Filter \"*.cloud*\" -Recurse | % { & \"$syncbin\" \"sync\" \"$($_.FullName)\";}}}"

Then just let it run and check on it every once in a while to make sure it isn’t stuck on a bad Box object, like we saw last time.

Let me know if you have any questions on the above.