ORA - Data download fail within SSL Connection - Max retries exceeded

Hi friends,

In the production environment, my site uses SSL but when the instructor downloads submissions files we are facing an error (but the error does not exist in non-SSL use).

I tried some ways searching the issue but no use, I wonder why this pretty feature does not work with SSL?.

Please share your minds with me, thanks in advance!

My environment: VPS, I am using the tutor for the environment,

Log :

Traceback (most recent call last):
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connection.py”, line 174, in _new_conn
conn = connection.create_connection(
File “/openedx/venv/lib/python3.8/site-packages/urllib3/util/connection.py”, line 73, in create_connection
for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
File “/opt/pyenv/versions/3.8.12/lib/python3.8/socket.py”, line 918, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 699, in urlopen
httplib_response = self._make_request(
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 382, in _make_request
self._validate_conn(conn)
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 1010, in _validate_conn
conn.connect()
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connection.py”, line 358, in connect
conn = self._new_conn()
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connection.py”, line 186, in _new_conn
raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7fe6c43758b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/openedx/venv/lib/python3.8/site-packages/requests/adapters.py”, line 439, in send
resp = conn.urlopen(
File “/openedx/venv/lib/python3.8/site-packages/urllib3/connectionpool.py”, line 755, in urlopen
retries = retries.increment(
File “/openedx/venv/lib/python3.8/site-packages/urllib3/util/retry.py”, line 574, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host=’{[mysitename.com](http://mysitename.com/)}’, port=443): Max retries exceeded with url: /openassessment/fileupload/submissions_attachments/ecb1a70abd8a801483dc00a437c9d2e0/course-v1:Edu+Edu001+001/block-v1:Edu+Edu001+001+type@openassessment+block@6d05a9f7776d48a2ab214d34ea87c08a/ (Caused by NewConnectionError(’<urllib3.connection.HTTPSConnection object at 0x7fe6c43758b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/openedx/venv/lib/python3.8/site-packages/openassessment/data.py”, line 1203, in create_zip_with_attachments
cls._download_file_by_key(key)
File “/openedx/venv/lib/python3.8/site-packages/openassessment/data.py”, line 956, in _download_file_by_key
response = requests.get(download_url)
File “/openedx/venv/lib/python3.8/site-packages/requests/api.py”, line 75, in get
return request(‘get’, url, params=params, **kwargs)
File “/openedx/venv/lib/python3.8/site-packages/requests/api.py”, line 61, in request
return session.request(method=method, url=url, **kwargs)
File “/openedx/venv/lib/python3.8/site-packages/requests/sessions.py”, line 542, in request
resp = self.send(prep, **send_kwargs)
File “/openedx/venv/lib/python3.8/site-packages/requests/sessions.py”, line 655, in send
r = adapter.send(request, **kwargs)
File “/openedx/venv/lib/python3.8/site-packages/requests/adapters.py”, line 516, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host=’{[mysitename.com](http://mysitename.com/)}’, port=443): Max retries exceeded with url: /openassessment/fileupload/submissions_attachments/ecb1a70abd8a801483dc00a437c9d2e0/course-v1:Edu+Edu001+001/block-v1:Edu+Edu001+001+type@openassessment+block@6d05a9f7776d48a2ab214d34ea87c08a/ (Caused by NewConnectionError(’<urllib3.connection.HTTPSConnection object at 0x7fe6c43758b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/openedx/edx-platform/lms/djangoapps/instructor_task/tasks_helper/misc.py”, line 389, in _step_context_manager
yield
File “/openedx/edx-platform/lms/djangoapps/instructor_task/tasks_helper/misc.py”, line 454, in upload_ora2_submission_files
compressed = OraDownloadData.create_zip_with_attachments(zip_file, submission_files_data)
File “/openedx/venv/lib/python3.8/site-packages/openassessment/data.py”, line 1221, in create_zip_with_attachments
csvwriter.writerow({**file_data, ‘file_found’: file_found})
UnboundLocalError: local variable ‘file_found’ referenced before assignment
2022-02-14 08:07:25,193 INFO 19 [edx.celery.task] [user None] [ip None] misc.py:457 - Task: cd5b4314-0f85-4789-a7a1-bc343b6d510d, InstructorTask ID: 51, Course: course-v1:Edu+Edu001+001, Input: {}, created empty zip file, aborting.
2022-02-14 08:07:25,194 INFO 19 [edx.celery.task] [user None] [ip None] runner.py:126 - Task: cd5b4314-0f85-4789-a7a1-bc343b6d510d, InstructorTask ID: 51, Course: course-v1:Edu+Edu001+001, Input: {}, Task type: compressed, Finishing task: failed
2022-02-14 08:07:25,204 INFO 19 [celery.app.trace] [user None] [ip None] trace.py:125 - Task lms.djangoapps.instructor_task.tasks.export_ora2_submission_files[cd5b4314-0f85-4789-a7a1-bc343b6d510d] succeeded in 1.751123068970628s: ‘failed’

Looking at this exact line from your error log above:

urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host=’{[mysitename.com](http://mysitename.com/)}’, port=443): Max retries exceeded with url: /openassessment/fileupload/submissions_attachments/ecb1a70abd8a801483dc00a437c9d2e0/course-v1:Edu+Edu001+001/block-v1:Edu+Edu001+001+type@openassessment+block@6d05a9f7776d48a2ab214d34ea87c08a/ (Caused by NewConnectionError(’<urllib3.connection.HTTPSConnection object at 0x7fe6c43758b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’))

Makes me wonder have you configured your DNS settings corrrectly with tutor?, if not here are releavnt doc about it:

When ENABLE_HTTPS is true , the whole Open edX platform will be reconfigured to work with “https” URIs. Calls to “http” URIs will be redirected to “https”. By default, SSL/TLS certificates will automatically be generated by Tutor (thanks to Caddy) from the Let’s Encrypt certificate authority.

The following DNS records must exist and point to your server:

LMS_HOST (e.g: myopenedx.com)
PREVIEW_LMS_HOST (e.g: preview.myopenedx.com)
CMS_HOST (e.g: studio.myopenedx.com)`

Ref: Configuration and customisation — Tutor documentation

@ghassan thank you very much for your response,

I have added the DNS-es as CNAME record to the system. but it doesn’t work on the documentation it doesn’t point which type I need to add maybe is it different than CNAME?

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.