Storage Explorer Version: 1.7.0
Platform/OS: Windows 10
Architecture: x64
Regression From: No
Bug description
When uploading files other than pictures into my Azure Blob Storage using Azure Storage Explorer, AzCopy quits unexpectedly all the time, whether I try to upload a complete Folder or just a File. PNG, JPEG, uploads fine, but CSV, JSON, XML, XLSX, all fail... with the new version 1.7.0 I had hoped the problem would have been solved, but it still remains. I only started using Azure Storage Explorer recently and this has never worked for me. Loading files in File Storage and Table Storage does work. It is a Blob Storage on a Azure Data Lake Storage Gen2.
Transfer from 'C:\Users***' to 'powerbi/TestFolder/' complete with errors: 0 completed, 0 failed (used name and key, discovery not completed), error: AzCopy quit unexpectedly
Steps to Reproduce
Expected Experience
I expect a Transfer completed (used name and key)
Actual Experience
Transfer failed with error message complete with errors: 0 completed, 0 failed (used name and key, discovery not completed), error: AzCopy quit unexpectedly
Additional Context
None that I see relevant...
This is awkward... when selecting files from my local drive that are a sync of my OneDrive it gives the described error except when being pictures and pdf, but when I load from my C:\Documents folder it does load. Very strange... I guess I found a workaround for myself, but I wonder if this behavior is to be expected...
I have the same error. The command-line that StorageExplorer creates to run AzCopy is incorrect. Mine looks like so:
$env:AZCOPY_CRED_TYPE = "Anonymous";
./azcopy copy "https://account.blob.core.windows.net/container/*?shared_access_key" "C:\Users\name\Downloads" --overwrite=false --recursive --fromTo=BlobLocal --list-of-files "C:\Users\name\AppData\Local\Temp\stg-exp-azcopy-202dd503-8552-4725-8577-17c6e8ee9317.json"
$env:AZCOPY_CRED_TYPE = "";
Notice the lack of space or semi-colon immediately after the ".json" file and the reset of the environement variable at the end. If I add a semi-colon and a space to separate those two instructions, the command-line runs correctly.
Hope this helps.
Thanks for the tip springcomp, but when comparing the AzCopy command generated by Azure Storage Explorer, between the file upload from my local C: drive and my C:\Users\me\OneDrive then both miss the semicolon and space, but the first one is working and the second one causes AzCopy to quit unexpectedly...
How can I modify the AzCopy command in Azure Storage Explorer and run it again?
I think we need a PR to fix this error. I'm not knowledgeable enough in electron/JavaScript to do this though...
Hey y'all, we recently updated the integrated AzCopy version. If y'all are willing could you give it a try and let us know if you're still having issues? Here's a link to a private build of Storage Explorer:
Let us know if AzCopy works for you now. If not, we can take a look at your AzCopy logs to find out more.
Hi M, thanks for the update. I ran the installation and at finish, launched the application. Unfortunately it still gives an error, although a different one this time...
{
"message": "\"failed to perform copy command due to error: cannot start job due to error: nothing can be uploaded, please use --recursive to upload directories.\n\""
}
It still does upload files from my local C: drive, but nothing from any of the synced OneDrive or SharePoint folders yet...
Hope this will help you fix the issue further.
Regards,
Hilko
Hi @MRayermannMSFT thank you very much for this private build.
Unfortunately, no, it does not work.
Now I get the following error:

Ok, let's work through these then!
@hulkje
If you're uploading multiple items then copy the AzCopy command to your clipboard. Paste it into a text editor (ideally not Notepad because Notepad handles new lines weirdly) and look for something like this:
--list-of-files "C:\Users\matt\AppData\Local\Temp\stg-exp-azcopy-29a381c8-64f8-481b-9eed-cf579cd4633d.json".
Drag and drop that file here Feel free to redact file and folder names in it, I just want to make sure it looks right.
Also, regardless of how many things you are uploading, can you share the log file with me? You'll find it at C:\Users\<your username>\.azcopy. If there's lots of logs in there, then just delete all of them, reproduce the failure, and then copy the single log that is now in the folder. Please read through the log and redact any sensitive information you do not want others to see (account keys, account names, etc.) before uploading the log file.
@springcomp , I think your issue should be a little easier to diagnose and fix. If you could do the following steps that'd be great:

"AzCopy.Blob.uploadBlobs", after doing show, the console should have much fewer things in it.FROM CHILD PROCESS 16812: {"id":"MessagePassingProviderProxy4353","args":{"type":"UploadFiles","defaultDestinationBlobFolder":"","connection":{"type":"blobContainer","serviceEndpoint":"https://REDACTED.blob.core.windows.net/","container":"1millionblobsdivided","credentials":[{"type":"key","accountKey":"REDACTED","accountName":"stgexp"},{"type":"auth","accountId":"REDACTED","tenantId":"REDACTED"}]}},"messageType":"FunctionCall","providerNamespace":"se-az-copy-extension","functionNamespace":"AzCopy.Blob.uploadBlobs"}Important: Please redact sensitive information before clicking "Comment." It is likely that what I'm having you paste includes things such as storage account name, account key, tenant ID, AAD account ID, etc. In my above example, you can see how I replaced those items with REDACTED. I advise you to do the same/similar. Thanks!
@MRayermannMSFT
Hum, I don't know if you have enough information from this log, but here goes:
`
FROM CHILD PROCESS 14932: Received a message in the child:
FROM CHILD PROCESS 14932: {"id":"MessagePassingProviderProxy20","args":{"blobs":[{"name":"processed/07eafd37c9cb463a9237c5c91ff23eb3.csv"}],"connection":{"type":"blobContainer","container":"processing","credentials":[{"type":"key","accountKey":"__account_key__","accountName":"__account_name__"}]}},"messageType":"FunctionCall","providerNamespace":"se-az-copy-extension","functionNamespace":"AzCopy.Blob.downloadBlobs"}
FROM CHILD PROCESS 14932: Sending a message from the child:
FROM CHILD PROCESS 14932: {"id":"MessagePassingHostProxy6","args":{"message":"Select a folder to download your blobs into","browseForFolder":true,"allowMultiSelect":false},"messageType":"FunctionCall","functionNamespace":"Environment.Dialogs.getOpenFileDialogResult"}
FROM CHILD PROCESS 14932: Received a message in the child:
FROM CHILD PROCESS 14932: {"id":"MessagePassingHostProxy6","messageType":"FunctionResponse","response":{"type":"result","result":["C:\Users\me\Downloads"]}}
FROM CHILD PROCESS 14932: Sending a message from the child:
FROM CHILD PROCESS 14932: {"id":"MessagePassingHostProxy7","args":{"title":"Failed to start transfer: Cannot read property 'slice' of undefined","message":"","sortOrder":1,"status":3,"actions":[]},"messageType":"FunctionCall","functionNamespace":"ActivityManager.add"}
FROM CHILD PROCESS 31612: Received a message in the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingProviderProxy21","args":{"title":"Failed to start transfer: Cannot read property 'slice' of undefined","message":"","sortOrder":1,"status":3,"actions":[]},"messageType":"FunctionCall","providerNamespace":"ActivityProvider","functionNamespace":"ActivityManager.add"}
FROM CHILD PROCESS 31612: Sending a message from the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingHostProxy2","args":{"entryRef":{"id":"b3gD9rvrGhe9AH1R"}},"messageType":"EventCall","functionNamespace":"ActivityManager.onAddEvent"}
FROM CHILD PROCESS 31612: Sending a message from the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingProviderProxy21","messageType":"FunctionResponse","providerNamespace":"ActivityProvider","functionNamespace":"ActivityManager.add","response":{"type":"result","result":{"id":"b3gD9rvrGhe9AH1R"}}}
FROM CHILD PROCESS 14932: Received a message in the child:
FROM CHILD PROCESS 14932: {"id":"MessagePassingHostProxy7","messageType":"FunctionResponse","response":{"type":"result","result":{"id":"b3gD9rvrGhe9AH1R"}}}
FROM CHILD PROCESS 31612: Received a message in the child:
FROM CHILD PROCESS 14932: Sending a message from the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingHostProxy2","messageType":"EventResponse","response":[null]}
FROM CHILD PROCESS 14932: {"id":"MessagePassingProviderProxy20","messageType":"FunctionResponse","providerNamespace":"se-az-copy-extension","functionNamespace":"AzCopy.Blob.downloadBlobs","response":{"type":"result"}}
FROM CHILD PROCESS 31612: Received a message in the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingProviderProxy22","args":{"id":"b3gD9rvrGhe9AH1R"},"messageType":"FunctionCall","providerNamespace":"ActivityProvider","functionNamespace":"ActivityManager.get"}
FROM CHILD PROCESS 31612: Sending a message from the child:
FROM CHILD PROCESS 31612: {"id":"MessagePassingProviderProxy22","messageType":"FunctionResponse","providerNamespace":"ActivityProvider","functionNamespace":"ActivityManager.get","response":{"type":"result","result":{"title":"Failed to start transfer: Cannot read property 'slice' of undefined","message":"","sortOrder":1,"status":3,"actions":[],"_lastModified":"2019-04-19T13:25:44.611Z","_id":"b3gD9rvrGhe9AH1R","numChildren":0}}}
`
Perfect! Ok, what I thought is indeed the case (there isn't a blob service endpoint in the args to our azcopy code). I will get a fix for this in for 1.8.0.
Ok checked in the fix today. You can try it here:
Hopefully that gets things working for you @springcomp 🤞
Hi M, sorry for the late reply.
The AzCopy command for a single file is like this:
./azcopy.exe copy "C:\Users\Hilko\OneDrive\Project\Data Lake\Azure_BlobFiles\SalesLT.Customer.csv"
or this when selecting a whole foler:
./azcopy.exe copy "C:\Users\Hilko\OneDrive\Project\Data Lake\Azure_BlobFiles\"
When I look in that log folder you mention, I only see another folder called 'plans'. In here I have only one file of the type STEV6... is that what you are looking for?
Thanks again for your support.
Regards,
Hilko
@hulkje ,some follow-ups:

./azcopy.exe copy "C:\Users\Hilko\OneDrive\Project\Data Lake\Azure_BlobFiles\SalesLT.Customer.csv" "https://someaccount.blob.core.windows.net/somecontainer/?SASCREDENTIAL" --overwrite=false --follow-symlinks --recursive --fromTo=LocalBlob --blobType=BlockBlobAnd no, that folder should be filled with text files:

Hi Matt,
Hmmm, I am afraid no log files appear in that C:\Users\Hilko.azcopy folder...
Hope this information helps.
Regards,
Hilko
Bit of miscommunication on question 1. I wanted to know if you could upload your SalesLT.Customer.csv file from a non-OneDrive location. So for example, if you placed SalesLT.Customer.csv on your desktop, does the upload work? Also I tried replicating your upload today and unfortunatley I'm still not seeing any issue. ☹
Command I ended up trying:
./azcopy.exe copy "C:\Users\matthew\OneDrive\Project\Data Lake\Azure_BlobFiles\SalesLT.Customer.csv" "https://dfsdfstest01.dfs.core.windows.net/fstest/SalesLT.Customer.csv" --overwrite=false --follow-symlinks --recursive --from-to=LocalBlobFS --put-md5
Let me contact the AzCopy folks and see if they have any ideas. Unfortunatley I'm out of ideas at this point.
Ah, ok, yes this works fine. I found out later and mentioned this in my second comment on this post.
Maybe the problem is with my laptop or the way our OneDrive / Office 365 is configured...?
Yes, something weird is going on with OneDrive unfortuately. The AzCopy team is looking into this.
@MRayermannMSFT
Sorry for the delayed answer, I was on vacation :-).
Yes, the latest private build works correctly with AzCopy.
Thank you very much.
Is this latest private build a part of the 1.9.0 release? I have just taken that release but am receiving failuer when performing an upload:
{
"message": "\"failed to perform copy command due to error: cannot start job due to error: nothing can be uploaded, please use --recursive to upload directories.\n\""
}
@ticklen Could you tell us a bit more on what you were trying to do when the error occured? Thanks.
Move an excel spreadsheet from my onedrive folder into gen2 blob storage.
Nancy Tickle – Enterprise Architect
Work: (804) 796-7083 | Email: [email protected]ticklen@chesterfield.gov
From: jinglouMSFT notifications@github.com
Sent: Monday, July 29, 2019 3:27 PM
To: microsoft/AzureStorageExplorer AzureStorageExplorer@noreply.github.com
Cc: Tickle, Nancy TickleN@chesterfield.gov; Mention mention@noreply.github.com
Subject: Re: [microsoft/AzureStorageExplorer] AzCopy quit unexpectedly uploading files other than pictures into Blob Storage (#1228)
CAUTION: External email alert - Do not open attachments or click links unless you recognize the sender and know the content is safe.
@ticklenhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fticklen&data=02%7C01%7C%7C40014c0b74774a0dba2a08d7145ab13f%7C05609332b9054a6bbf744807fa89857d%7C1%7C0%7C637000252062901579&sdata=CgrwmSdZoGRcQm7qtHrWX%2FxGUwPUWcpnjcZqzOhOecQ%3D&reserved=0 Could you tell us a bit more on what you were trying to do when the error occured? Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FAzureStorageExplorer%2Fissues%2F1228%3Femail_source%3Dnotifications%26email_token%3DAFTYGMXBYVN32SKCXHPUTK3QB477JA5CNFSM4G5NXPI2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3BX7PQ%23issuecomment-516128702&data=02%7C01%7C%7C40014c0b74774a0dba2a08d7145ab13f%7C05609332b9054a6bbf744807fa89857d%7C1%7C0%7C637000252062901579&sdata=RbzZxbsYThenwq9A%2Bs3FN5Tr9JRBg1zrMTtFC7PKZd8%3D&reserved=0, or mute the threadhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAFTYGMT3ZVV46Z5OYVFSOPDQB477JANCNFSM4G5NXPIQ&data=02%7C01%7C%7C40014c0b74774a0dba2a08d7145ab13f%7C05609332b9054a6bbf744807fa89857d%7C1%7C0%7C637000252062911571&sdata=cur5EBsqXplgKDGAog16NN%2B2DWrIDW%2B0TqL9aF%2FSFzc%3D&reserved=0.
@ticklen can you share with us the AzCopy log file. There should be an action in the activity log to go to it. You can then attach it to a new comment on this issue.
