Adventure XBlock issues on Lilac

I’m using Lilac release, when I add Adventure XBlock & publish the unit, it throws the following errors in the console log.

2021-12-23 15:01:10,097 ERROR 1234 [edx.celery.task] [user 3] [ip 172.22.0.1] tasks.py:121 - BlockStructure: update_course_in_cache_v2 encountered unknown error in course course-v1:pakx+ITC01+2021_ITC, task_id d86402b5-828a-4a45-8893-ecd4600693f0. Retry #0
Traceback (most recent call last):
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py", line 107, in _call_and_retry_if_needed
    api_method(course_key)
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py", line 32, in update_course_in_cache
    return get_block_structure_manager(course_key).update_collected_if_needed()
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py", line 116, in update_collected_if_needed
    self._update_collected()
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py", line 129, in _update_collected
    self.store.add(block_structure)
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py", line 70, in add
    serialized_data = self._serialize(block_structure)
  File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py", line 205, in _serialize
    return zpickle(data_to_cache)
  File "/edx/app/edxapp/edx-platform/openedx/core/lib/cache_utils.py", line 209, in zpickle
    return zlib.compress(pickle.dumps(data, 4))  # Keep this constant as we upgrade from python 2 to 3.
_pickle.PicklingError: Can't pickle <class 'xblock.internal.AdventureBlockWithMixins'>: attribute lookup AdventureBlockWithMixins on xblock.internal failed
2021-12-23 15:01:10,099 INFO 1234 [celery.app.trace] [user 3] [ip 172.22.0.1] trace.py:125 - Task openedx.core.djangoapps.content.block_structure.tasks.update_course_in_cache_v2[d86402b5-828a-4a45-8893-ecd4600693f0] retry: Retry in 30s: PicklingError("Can't pickle <class 'xblock.internal.AdventureBlockWithMixins'>: attribute lookup AdventureBlockWithMixins on xblock.internal failed")
> /edx/app/edxapp/edx-platform/openedx/core/lib/cache_utils.py(209)zpickle()
-> return zlib.compress(pickle.dumps(data, 4))  # Keep this constant as we upgrade from python 2 to 3.

Steps to produce

  1. Add Adventure XBlock in any unit on Lilac
  2. Publish the unit and observe the logs

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