Update olive, import data

Hello everyone,

I am upgrading my application to Olive, and I have imported the database from my old application to Olive. However, I encountered an issue when importing my courses. Some courses display the full content, while others only show the title and images. I have checked the logs, and it shows the following error.

 2023-06-22 05:47:25,350 ERROR 31 [edx.courseware]  tabs.py:242 - Unknown tab type 'course_info' Known types: [<class 'lms.djangoapps.courseware.tabs.CoursewareTab'>, <class 'lms.djangoapps.courseware.tabs.ProgressTab'>, <class 'lms.djangoapps.courseware.tabs.DatesTab'>, <class 'lms.djangoapps.discussion.plugins.DiscussionTab'>, <class 'openedx.features.lti_course_tab.tab.DiscussionLtiCourseTab'>, <class 'openedx.core.djangoapps.course_live.tab.CourseLiveTab'>, <class 'lms.djangoapps.edxnotes.plugins.EdxNotesTab'>, <class 'lms.djangoapps.teams.plugins.TeamsTab'>, <class 'lms.djangoapps.course_wiki.tab.WikiTab'>, <class 'lms.djangoapps.courseware.tabs.SyllabusTab'>, <class 'xmodule.tabs.StaticTab'>, <class 'lms.djangoapps.courseware.tabs.ExternalLinkCourseTab'>, <class 'openedx.features.lti_course_tab.tab.LtiCourseTab'>, <class 'lms.djangoapps.courseware.tabs.TextbookTabs'>, <class 'lms.djangoapps.courseware.tabs.PDFTextbookTabs'>, <class 'lms.djangoapps.courseware.tabs.HtmlTextbookTabs'>, <class 'lms.djangoapps.instructor.views.instructor_dashboard.InstructorDashboardTab'>, <class 'lms.djangoapps.ccx.plugins.CcxCourseTab'>, <class 'lms.djangoapps.courseware.tabs.ExternalDiscussionCourseTab'>].
 Traceback (most recent call last):
   File "/openedx/edx-platform/xmodule/tabs.py", line 238, in from_json
    tab_type = CourseTabPluginManager.get_plugin(tab_type_name)
  File "/openedx/venv/lib/python3.8/site-packages/edx_django_utils/plugins/plugin_manager.py", line 48, in get_plugin
    raise PluginError(
 edx_django_utils.plugins.plugin_manager.PluginError: No such plugin course_info for entry point openedx.course_tab
 2023-06-22 05:47:25,351 WARNING 31 [openedx.core.djangoapps.content.course_overviews.models] [user 4024] [ip 42.117.65.132] models.py:710 - Can't instantiate CourseTab from {'id': 219591, 'tab_id': 'info', 'course_overview_id': CourseLocator('FUNiX', 'MAA101x_01_VN', '2019_T10', None, None), 'type': 'course_info', 'name': 'Home', 'course_staff_only': False, 'url_slug': None, 'link': None, 'is_hidden': False}
 2023-06-22 05:47:25,373 ERROR 31 [root] [user None] [ip None] signals.py:22 - Uncaught exception from None
Traceback (most recent call last):
  File "/openedx/venv/lib/python3.8/site-packages/django/core/handlers/exception.py", line 47, in inner
   response = get_response(request)
 File "/openedx/venv/lib/python3.8/site-packages/django/core/handlers/base.py", line 181, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
   File "/opt/pyenv/versions/3.8.12/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/openedx/venv/lib/python3.8/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
     return view_func(*args, **kwargs)
  File "/openedx/venv/lib/python3.8/site-packages/django/views/generic/base.py", line 70, in view
    return self.dispatch(request, *args, **kwargs)
   File "/openedx/venv/lib/python3.8/site-packages/rest_framework/views.py", line 509, in dispatch
    response = self.handle_exception(exc)
 File "/openedx/venv/lib/python3.8/site-packages/rest_framework/views.py", line 469, in handle_exception
    self.raise_uncaught_exception(exc)
   File "/openedx/venv/lib/python3.8/site-packages/rest_framework/views.py", line 480, in raise_uncaught_exception
     raise exc
   File "/openedx/venv/lib/python3.8/site-packages/rest_framework/views.py", line 506, in dispatch
     response = handler(request, *args, **kwargs)
   File "/openedx/edx-platform/./lms/djangoapps/course_home_api/course_metadata/views.py", line 127, in get
    'tabs': get_course_tab_list(request.user, course),
  File "/openedx/edx-platform/./lms/djangoapps/courseware/tabs.py", line 331, in get_course_tab_list
    print('xmodule_tab_list', list(xmodule_tab_list))
   File "/openedx/edx-platform/xmodule/tabs.py", line 485, in iterate_displayable
     if tab.is_enabled(course, user=user) and (include_hidden or not (user and tab.is_hidden)):
   File "/openedx/edx-platform/./lms/djangoapps/courseware/tabs.py", line 101, in is_enabled
     return not course.hide_progress_tab
   File "/openedx/edx-platform/./openedx/core/djangoapps/content/course_overviews/models.py", line 864, in hide_progress_tab
    return self._original_course.hide_progress_tab
 AttributeError: 'NoneType' object has no attribute 'hide_progress_tab'

I appreciate any help you can provide.

1 Like

Similar problem. I’m working in a staging (ie non-production) environment that had been running Nutmeg for the last couple of months. Last week I switched from Nutmeg to Olive as part of the client’s request to enable some of the MFE’s.

MORE:

  1. i originally upgraded this staging environment from Nutmeg to Olive by bumping the tutor version from 14x to 15x and redeploying. this was successful, and we’d been running this environment for the last week or so.
  2. This morning I re-migrated their data from their current production environment. Refreshing their mysql, mongo and storage data somehow lead me to a similar stack trace to what’s presented above.

here’s the stack trace that i got:

2023-07-25 14:53:52,279 ERROR 7 [edx.courseware] [user 1389] [ip 192.168.5.97] tabs.py:235 - Unknown tab type 'course_info' Known types: [<class 'lms.djangoapps.courseware.tabs.CoursewareTab'>, <class 'lms.djangoapps.courseware.tabs.ProgressTab'>, <class 'lms.djangoapps.courseware.tabs.DatesTab'>, <class 'lms.djangoapps.discussion.plugins.DiscussionTab'>, <class 'openedx.features.lti_course_tab.tab.DiscussionLtiCourseTab'>, <class 'openedx.core.djangoapps.course_live.tab.CourseLiveTab'>, <class 'lms.djangoapps.edxnotes.plugins.EdxNotesTab'>, <class 'lms.djangoapps.teams.plugins.TeamsTab'>, <class 'lms.djangoapps.course_wiki.tab.WikiTab'>, <class 'lms.djangoapps.courseware.tabs.SyllabusTab'>, <class 'xmodule.tabs.StaticTab'>, <class 'lms.djangoapps.courseware.tabs.ExternalLinkCourseTab'>, <class 'openedx.features.lti_course_tab.tab.LtiCourseTab'>, <class 'lms.djangoapps.courseware.tabs.TextbookTabs'>, <class 'lms.djangoapps.courseware.tabs.PDFTextbookTabs'>, <class 'lms.djangoapps.courseware.tabs.HtmlTextbookTabs'>, <class 'lms.djangoapps.instructor.views.instructor_dashboard.InstructorDashboardTab'>, <class 'lms.djangoapps.ccx.plugins.CcxCourseTab'>, <class 'lms.djangoapps.courseware.tabs.ExternalDiscussionCourseTab'>].
Traceback (most recent call last):
  File "/openedx/edx-platform/xmodule/tabs.py", line 233, in from_json
    tab_type = CourseTabPluginManager.get_plugin(tab_type_name)
  File "/openedx/venv/lib/python3.8/site-packages/edx_django_utils/plugins/plugin_manager.py", line 48, in get_plugin
    raise PluginError(
edx_django_utils.plugins.plugin_manager.PluginError: No such plugin course_info for entry point openedx.course_tab
2023-07-25 14:53:52,280 WARNING 7 [openedx.core.djangoapps.content.course_overviews.models] [user 1389] [ip 192.168.5.97] models.py:704 - Can't instantiate CourseTab from {'id': 119554, 'tab_id': 'info', 'course_overview_id': CourseLocator('UBCx', 'AWS101_IP', 'June2021', None, None), 'type': 'course_info', 'name': 'Home', 'course_staff_only': False, 'url_slug': None, 'link': None, 'is_hidden': False}

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