Azure/azure-storage-python

Connection error timeout on BlobClient upload_blob

dwhiteddsoft opened this issue · 6 comments

Which service(blob, file, queue) does this issue concern?

BLOB

Which version of the SDK was used? Please provide the output of pip freeze.

astroid==2.3.3
azure-core==1.4.0
azure-functions==1.2.0
azure-storage-blob==12.3.0
certifi==2020.4.5.1
cffi==1.14.0
chardet==3.0.4
click==7.1.1
cryptography==2.9
fuzzywuzzy==0.18.0
idna==2.9
isodate==0.6.0
isort==4.3.21
joblib==0.14.1
lazy-object-proxy==1.4.3
mccabe==0.6.1
msrest==0.6.13
nltk==3.5
numpy==1.18.2
oauthlib==3.1.0
pandas==1.0.3
pdf2image==1.12.1
Pillow==7.1.1
pycparser==2.20
pylint==2.4.4
pytesseract==0.3.3
python-dateutil==2.8.1
pytz==2019.3
regex==2020.4.4
requests==2.23.0
requests-oauthlib==1.3.0
scikit-learn==0.22.2.post1
scipy==1.4.1
six==1.14.0
tqdm==4.45.0
typed-ast==1.4.1
urllib3==1.25.9
wrapt==1.11.2

What problem was encountered?

the following line of code fails with trace from functions locally:
blobOutImage.upload_blob(imgByteArray, blob_type="BlockBlob", length=len(imgByteArray), overwrite=True, timeout=600)

[4/17/2020 4:03:42 PM] INFO: Received FunctionInvocationRequest, request ID: ac8b1935-32e4-4e2d-8cd2-3362e5c4430c, function ID: e4b6aa09-b4ba-463f-8e07-5dc2953aaf8a, invocation ID: fcc840c0-8f18-4912-876c-d449bce37582
[4/17/2020 4:03:42 PM] processInvoiceDS HTTP trigger function processed a request.
[4/17/2020 4:03:42 PM] Request URL: 'https://avidxsadvuno.blob.core.windows.net/microsoft-pdf/100682735.pdf'
[4/17/2020 4:03:42 PM] Request method: 'GET'
[4/17/2020 4:03:42 PM] Request headers:
[4/17/2020 4:03:42 PM] 'Accept': 'application/xml'
[4/17/2020 4:03:42 PM] 'x-ms-range': 'REDACTED'
[4/17/2020 4:03:42 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:03:42 PM] 'x-ms-date': 'REDACTED'
[4/17/2020 4:03:42 PM] 'x-ms-client-request-id': '0286c11a-80c5-11ea-ab85-acde48001122'
[4/17/2020 4:03:42 PM] 'User-Agent': 'azsdk-python-storage-blob/12.3.0 Python/3.6.8 (Darwin-19.4.0-x86_64-i386-64bit)'
[4/17/2020 4:03:42 PM] 'Authorization': 'REDACTED'
[4/17/2020 4:03:43 PM] Response status: 206
[4/17/2020 4:03:43 PM] Response headers:
[4/17/2020 4:03:43 PM] 'Content-Length': '287226'
[4/17/2020 4:03:43 PM] 'Content-Type': 'application/pdf'
[4/17/2020 4:03:43 PM] 'Content-Range': 'REDACTED'
[4/17/2020 4:03:43 PM] 'Last-Modified': 'Sat, 25 Jan 2020 20:57:16 GMT'
[4/17/2020 4:03:43 PM] 'Accept-Ranges': 'REDACTED'
[4/17/2020 4:03:43 PM] 'ETag': '"0x8D7A1D928D43DF9"'
[4/17/2020 4:03:43 PM] 'Server': 'Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0'
[4/17/2020 4:03:43 PM] 'x-ms-request-id': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-client-request-id': '0286c11a-80c5-11ea-ab85-acde48001122'
[4/17/2020 4:03:43 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-creation-time': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-blob-content-md5': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-lease-status': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-lease-state': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-blob-type': 'REDACTED'
[4/17/2020 4:03:43 PM] 'Content-Disposition': 'REDACTED'
[4/17/2020 4:03:43 PM] 'x-ms-server-encrypted': 'REDACTED'
[4/17/2020 4:03:43 PM] 'Date': 'Fri, 17 Apr 2020 16:03:42 GMT'
[4/17/2020 4:03:43 PM] Download Azure BLOB completed in: Time Lapsed = 0:0:1.0637
[4/17/2020 4:03:47 PM] Image size too big. Downsizing.
[4/17/2020 4:03:47 PM] Image bytes before dowsize: 5088282
[4/17/2020 4:03:48 PM] Image bytes: 2922949
[4/17/2020 4:03:48 PM] Request URL: 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED'
[4/17/2020 4:03:48 PM] Request method: 'PUT'
[4/17/2020 4:03:48 PM] Request headers:
[4/17/2020 4:03:48 PM] 'Content-Type': 'application/octet-stream'
[4/17/2020 4:03:48 PM] 'Content-Length': '2922949'
[4/17/2020 4:03:48 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:03:48 PM] 'x-ms-blob-type': 'REDACTED'
[4/17/2020 4:03:48 PM] 'x-ms-date': 'REDACTED'
[4/17/2020 4:03:48 PM] 'x-ms-client-request-id': '061f40f4-80c5-11ea-8b62-acde48001122'
[4/17/2020 4:03:48 PM] 'User-Agent': 'azsdk-python-storage-blob/12.3.0 Python/3.6.8 (Darwin-19.4.0-x86_64-i386-64bit)'
[4/17/2020 4:03:48 PM] 'Authorization': 'REDACTED'
[4/17/2020 4:04:25 PM] Request URL: 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED'
[4/17/2020 4:04:25 PM] Request method: 'PUT'
[4/17/2020 4:04:25 PM] Request headers:
[4/17/2020 4:04:25 PM] 'Content-Type': 'application/octet-stream'
[4/17/2020 4:04:25 PM] 'Content-Length': '2922949'
[4/17/2020 4:04:25 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:04:25 PM] 'x-ms-blob-type': 'REDACTED'
[4/17/2020 4:04:25 PM] 'x-ms-date': 'REDACTED'
[4/17/2020 4:04:25 PM] 'x-ms-client-request-id': '061f40f4-80c5-11ea-8b62-acde48001122'
[4/17/2020 4:04:25 PM] 'User-Agent': 'azsdk-python-storage-blob/12.3.0 Python/3.6.8 (Darwin-19.4.0-x86_64-i386-64bit)'
[4/17/2020 4:04:25 PM] 'Authorization': 'REDACTED'
[4/17/2020 4:05:12 PM] Request URL: 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED'
[4/17/2020 4:05:12 PM] Request method: 'PUT'
[4/17/2020 4:05:12 PM] Request headers:
[4/17/2020 4:05:12 PM] 'Content-Type': 'application/octet-stream'
[4/17/2020 4:05:12 PM] 'Content-Length': '2922949'
[4/17/2020 4:05:12 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:05:12 PM] 'x-ms-blob-type': 'REDACTED'
[4/17/2020 4:05:12 PM] 'x-ms-date': 'REDACTED'
[4/17/2020 4:05:12 PM] 'x-ms-client-request-id': '061f40f4-80c5-11ea-8b62-acde48001122'
[4/17/2020 4:05:12 PM] 'User-Agent': 'azsdk-python-storage-blob/12.3.0 Python/3.6.8 (Darwin-19.4.0-x86_64-i386-64bit)'
[4/17/2020 4:05:12 PM] 'Authorization': 'REDACTED'
[4/17/2020 4:06:14 PM] Request URL: 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED'
[4/17/2020 4:06:14 PM] Request method: 'PUT'
[4/17/2020 4:06:14 PM] Request headers:
[4/17/2020 4:06:14 PM] 'Content-Type': 'application/octet-stream'
[4/17/2020 4:06:14 PM] 'Content-Length': '2922949'
[4/17/2020 4:06:14 PM] 'x-ms-version': 'REDACTED'
[4/17/2020 4:06:14 PM] 'x-ms-blob-type': 'REDACTED'
[4/17/2020 4:06:14 PM] 'x-ms-date': 'REDACTED'
[4/17/2020 4:06:14 PM] 'x-ms-client-request-id': '061f40f4-80c5-11ea-8b62-acde48001122'
[4/17/2020 4:06:14 PM] 'User-Agent': 'azsdk-python-storage-blob/12.3.0 Python/3.6.8 (Darwin-19.4.0-x86_64-i386-64bit)'
[4/17/2020 4:06:14 PM] 'Authorization': 'REDACTED'
[4/17/2020 4:06:35 PM] ('Connection aborted.', timeout('The write operation timed out',))

Have you found a mitigation/solution?

No

Note: for table service, please post the issue here instead: https://github.com/Azure/azure-cosmosdb-python.

hi @dwhiteddsoft

Thanks for reaching out!
https://github.com/Azure/azure-sdk-for-python is the right repo to post this issue

For your question:
Did you find a way to resolve the problem? I wasn't able to reproduce that.
Did you set a timeout value? 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED' If you did then would you like to remove it and try again?

hi @dwhiteddsoft

Thanks for reaching out!
https://github.com/Azure/azure-sdk-for-python is the right repo to post this issue

For your question:
Did you find a way to resolve the problem? I wasn't able to reproduce that.
Did you set a timeout value? 'https://avidxsadvuno.blob.core.windows.net/preprocess-ds/img%2F100682735.png?timeout=REDACTED' If you did then would you like to remove it and try again?

can you comment how one does this from the azure-storage-blob python functions? (i.e. do I just add "timeout=60" in my keywords), and what a reasonable time is?

I just hit this too and would like to know what a good timeout recommendation would be?

Hello, I hit the same Error and I could not solve it till now. I tried without timeout keyword, timeout = 60, timeout = 100 and timeout = 500 but the error always occurs after manually stopped 165 seconds.
I have the problem only in local debugging.

If it helps, I was able to alleviate the issue within three retries upon some exception. Usually, it does the trick with the 1st retry. However, the issue seems like an occasional transactional hang initially at least for me but it isn't easily reproducable.

any solution for this issue? I have the same problem and changing the timeout doesn't solve the issue.
I want to upload a bunch of csv files each around 50 MB and none works. I've tried retrying for single files and it didn't work.
The only way that works was uploading parquet files but I need csv