Skip to content

AttributeError: 'ProtocolError' object has no attribute 'lower' #19619

@dgiron-midokura

Description

@dgiron-midokura

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Describe the bug
Exception on commit 5ad4270 causes AttributeError.

if isinstance(ex, AzureException) and 'incorrect padding' in ex.args[0].lower():
raise CLIError('incorrect usage: the given account key may be not valid.')

AttributeError: 'ProtocolError' object has no attribute 'lower'

To Reproduce

  • Having Connection Timeout when trying to upload a file to Azure Blob Storage.

Expected behavior

Environment summary

  • Running on Github Actions bacongobbler/azure-blob-storage-upload@v1.2.0, based on Container mcr.microsoft.com/azure-cli:latest

Additional context

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.9/site-packages/urllib3/connection.py", line 234, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/local/lib/python3.9/http/client.py", line 1257, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1303, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1252, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1051, in _send_output
    self.send(chunk)
  File "/usr/local/lib/python3.9/http/client.py", line 973, in send
    self.sock.sendall(data)
  File "/usr/local/lib/python3.9/ssl.py", line 1204, in sendall
    v = self.send(byte_view[count:])
  File "/usr/local/lib/python3.9/ssl.py", line 1173, in send
    return self._sslobj.write(data)
socket.timeout: The write operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.9/site-packages/urllib3/util/retry.py", line 532, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/local/lib/python3.9/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.9/site-packages/urllib3/connection.py", line 234, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/local/lib/python3.9/http/client.py", line 1257, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1303, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1252, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.9/http/client.py", line 1051, in _send_output
    self.send(chunk)
  File "/usr/local/lib/python3.9/http/client.py", line 973, in send
    self.sock.sendall(data)
  File "/usr/local/lib/python3.9/ssl.py", line 1204, in sendall
    v = self.send(byte_view[count:])
  File "/usr/local/lib/python3.9/ssl.py", line 1173, in send
    return self._sslobj.write(data)
urllib3.exceptions.ProtocolError: ('Connection aborted.', timeout('The write operation timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/common/storageclient.py", line 321, in _perform_request
    response = self._httpclient.perform_request(request)
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/common/_http/httpclient.py", line 86, in perform_request
    response = self.session.request(request.method,
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/adapters.py", line 498, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', timeout('The write operation timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 691, in _run_job
    result = cmd_copy(params)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 328, in __call__
    return self.handler(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/operations/blob.py", line 432, in storage_blob_upload_batch
    include, result = _upload_blob(cmd, client, file_path=src, container_name=destination_container_name,
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/util.py", line 239, in wrapper
    return True, func(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/operations/blob.py", line 416, in _upload_blob
    return upload_blob(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/operations/blob.py", line 596, in upload_blob
    return type_func[blob_type]()
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/operations/blob.py", line 589, in upload_block_blob
    return client.create_blob_from_path(**create_blob_args)
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/blob/blockblobservice.py", line 455, in create_blob_from_path
    return self.create_blob_from_stream(
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/blob/blockblobservice.py", line 577, in create_blob_from_stream
    resp = self._put_blob(
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/blob/blockblobservice.py", line 1108, in _put_blob
    return self._perform_request(request, _parse_base_properties)
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/common/storageclient.py", line 430, in _perform_request
    raise ex
  File "/usr/local/lib/python3.9/site-packages/azure/multiapi/storage/v2018_11_09/common/storageclient.py", line 361, in _perform_request
    raise _wrap_exception(ex, AzureException)
azure.common.AzureException: ('Connection aborted.', timeout('The write operation timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/knack/cli.py", line 231, in invoke
    cmd_result = self.invocation.execute(args)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 657, in execute
    raise ex
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 720, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/usr/local/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 712, in _run_job
    return cmd_copy.exception_handler(ex)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/__init__.py", line 368, in new_handler
    handler(ex)
  File "/usr/local/lib/python3.9/site-packages/azure/cli/command_modules/storage/__init__.py", line 273, in handler
    if isinstance(ex, AzureException) and 'incorrect padding' in ex.args[0].lower():
AttributeError: 'ProtocolError' object has no attribute 'lower'
To open an issue, please run: 'az feedback'

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions