-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Open
Description
Hi
I've a fresh installation, with tutor tutor-minio
I can import the course without an issue using tutor local do importdemocourse, but when I want to reindex my courses, it fails.
$ tutor local run cms ./manage.py cms reindex_course --all --setup
....
2025-10-17 12:53:43,121 ERROR 1 [edxval.api] [user None] [ip None] api.py:295 - [edx-val] Error while retrieving transcript for video=fdfa686f-8b70-4437-a490-0459cc9f1f2a -- language_code=en
Traceback (most recent call last):
File "/openedx/venv/lib/python3.11/site-packages/edxval/api.py", line 293, in get_video_transcript_data
return dict(file_name=video_transcript.filename, content=video_transcript.transcript.file.read())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/storages/backends/s3.py", line 198, in read
return self._force_mode(super().read(*args, **kwargs))
^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/django/core/files/utils.py", line 41, in <lambda>
read = property(lambda self: self.file.read)
^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/storages/backends/s3.py", line 181, in _get_file
self.obj.download_fileobj(
File "/openedx/venv/lib/python3.11/site-packages/boto3/s3/inject.py", line 948, in object_download_fileobj
return self.meta.client.download_fileobj(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/botocore/context.py", line 124, in wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/boto3/s3/inject.py", line 859, in download_fileobj
return future.result()
^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/futures.py", line 111, in result
return self._coordinator.result()
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/futures.py", line 272, in result
raise self._exception
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/tasks.py", line 272, in _main
self._submit(transfer_future=transfer_future, **kwargs)
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/download.py", line 358, in _submit
response['ContentLength']
~~~~~~~~^^^^^^^^^^^^^^^^^
KeyError: 'ContentLength'
2025-10-17 12:53:43,123 ERROR 1 [edx.modulestore] [user None] [ip None] courseware_index.py:264 - Indexing error encountered, courseware index may be out of date course-v1:OpenedX+DemoX+DemoCourse - KeyError('ContentLength')
Traceback (most recent call last):
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 258, in index
prepare_item_index(item, groups_usage_info=groups_usage_info)
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 218, in prepare_item_index
prepare_item_index(
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 218, in prepare_item_index
prepare_item_index(
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 218, in prepare_item_index
prepare_item_index(
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 181, in prepare_item_index
item_index_dictionary = item.index_dictionary()
^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/xmodule/video_block/video_block.py", line 1160, in index_dictionary
_update_transcript_for_index(language)
File "/openedx/edx-platform/xmodule/video_block/video_block.py", line 1148, in _update_transcript_for_index
transcript = get_transcript(self, lang=language, output_format=Transcript.TXT)[0].replace("\n", " ")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/xmodule/video_block/transcripts_utils.py", line 1197, in get_transcript
return get_transcript_from_val(edx_video_id, lang, output_format)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/xmodule/video_block/transcripts_utils.py", line 73, in wrapper
return func(*args, **kwds)
^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/xmodule/video_block/transcripts_utils.py", line 956, in get_transcript_from_val
transcript = get_video_transcript_content(edx_video_id, lang)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/xmodule/video_block/transcripts_utils.py", line 639, in get_video_transcript_content
transcript = edxval_api.get_video_transcript_data(edx_video_id, language_code)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/edxval/api.py", line 293, in get_video_transcript_data
return dict(file_name=video_transcript.filename, content=video_transcript.transcript.file.read())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/storages/backends/s3.py", line 198, in read
return self._force_mode(super().read(*args, **kwargs))
^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/django/core/files/utils.py", line 41, in <lambda>
read = property(lambda self: self.file.read)
^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/storages/backends/s3.py", line 181, in _get_file
self.obj.download_fileobj(
File "/openedx/venv/lib/python3.11/site-packages/boto3/s3/inject.py", line 948, in object_download_fileobj
return self.meta.client.download_fileobj(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/botocore/context.py", line 124, in wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/boto3/s3/inject.py", line 859, in download_fileobj
return future.result()
^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/futures.py", line 111, in result
return self._coordinator.result()
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/futures.py", line 272, in result
raise self._exception
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/tasks.py", line 272, in _main
self._submit(transfer_future=transfer_future, **kwargs)
File "/openedx/venv/lib/python3.11/site-packages/s3transfer/download.py", line 358, in _submit
response['ContentLength']
~~~~~~~~^^^^^^^^^^^^^^^^^
KeyError: 'ContentLength'
2025-10-17 12:53:43,126 ERROR 1 [root] [user None] [ip None] reindex_course.py:177 - Error indexing course course-v1:OpenedX+DemoX+DemoCourse due to the error: Error(s) present during indexing.
Traceback (most recent call last):
File "/openedx/edx-platform/cms/djangoapps/contentstore/management/commands/reindex_course.py", line 169, in handle
CoursewareSearchIndexer.do_course_reindex(store, course_key)
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 374, in do_course_reindex
return cls._do_reindex(modulestore, course_key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 384, in _do_reindex
indexed_count = super()._do_reindex(modulestore, structure_key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 282, in _do_reindex
indexed_count = cls.index(modulestore, structure_key, timeout=180)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/openedx/edx-platform/cms/djangoapps/contentstore/courseware_index.py", line 272, in index
raise SearchIndexingError('Error(s) present during indexing', error_list)
cms.djangoapps.contentstore.courseware_index.SearchIndexingError: Error(s) present during indexing
2025-10-17 12:53:43,127 WARNING 1 [root] [user None] [ip None] reindex_course.py:180 - 2 of 3 courses reindexed succesfully. Total running time: 2.5 seconds.
2025-10-17 12:53:43,127 WARNING 1 [root] [user None] [ip None] reindex_course.py:182 - Reindex failed for 1 courses:
2025-10-17 12:53:43,127 WARNING 1 [root] [user None] [ip None] reindex_course.py:184 - course-v1:OpenedX+DemoX+DemoCourseedx-platform: teak.1
tutor and tutor-minio: 20.0.0
Metadata
Metadata
Assignees
Labels
No labels