Thank you, that’s great news!
Importing this one failed:
/cc @richard
INFO 2025-03-04 21:09:25,013 kolibri.core.content.management.commands.importchannel Downloading data for channel id 59cf4846c9e058a5ba35d1824ad111b3
INFO 2025-03-04 21:09:26,291 kolibri.core.content.utils.channel_import Importing LocalFile data
INFO 2025-03-04 21:09:26,302 kolibri.core.content.utils.channel_import Importing Language data
INFO 2025-03-04 21:09:26,304 kolibri.core.content.utils.channel_import Importing ContentNode data
INFO 2025-03-04 21:09:26,546 kolibri.core.content.utils.channel_import Importing File data
INFO 2025-03-04 21:09:26,655 kolibri.core.content.utils.channel_import Importing ChannelMetadata data
INFO 2025-03-04 21:09:26,657 kolibri.core.content.utils.channel_import Importing AssessmentMetaData data
INFO 2025-03-04 21:09:26,668 kolibri.core.content.utils.channel_import Importing ContentNode_related data
INFO 2025-03-04 21:09:26,670 kolibri.core.content.utils.channel_import Importing ContentNode_has_prerequisite data
INFO 2025-03-04 21:09:26,671 kolibri.core.content.utils.channel_import Importing ContentTag data
INFO 2025-03-04 21:09:26,672 kolibri.core.content.utils.channel_import Importing ContentNode_tags data
INFO 2025-03-04 21:09:37,301 kolibri.core.content.utils.channel_import Channel 59cf4846c9e058a5ba35d1824ad111b3 successfully imported into the database
ERROR 2025-03-04 21:09:47,323 kolibri.core.content.utils.resource_import An error occurred during content import: Cannot calculate MD5: Not all chunks are complete
INFO 2025-03-04 21:09:47,712 kolibri.core.content.utils.annotation Setting availability to True of 2 LocalFile objects based on passed in checksums
INFO 2025-03-04 21:09:47,732 kolibri.core.content.utils.annotation Setting availability of non-topic ContentNode objects based on LocalFile availability in 1 batches of 10000
INFO 2025-03-04 21:09:47,817 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for 5 levels
INFO 2025-03-04 21:09:47,827 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for level 5
INFO 2025-03-04 21:09:47,832 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for level 4
INFO 2025-03-04 21:09:47,834 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for level 3
INFO 2025-03-04 21:09:47,835 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for level 2
INFO 2025-03-04 21:09:47,836 kolibri.core.content.utils.annotation Annotating ContentNode objects with children for level 1
ERROR 2025-03-04 21:09:48,156 kolibri.core.tasks.job Job 66abeaf5188f4e1989ebc18d57bcc64f raised an exception: Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/kolibri/core/tasks/job.py", line 326, in execute
result = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/core/tasks/registry.py", line 237, in __call__
return self.func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/core/content/tasks.py", line 270, in remotecontentimport
manager.run()
File "/usr/lib/python3/dist-packages/kolibri/core/content/utils/resource_import.py", line 210, in run
results = self.run_import()
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/core/content/utils/resource_import.py", line 332, in run_import
raise self.exception
File "/usr/lib/python3/dist-packages/kolibri/core/content/utils/resource_import.py", line 157, in _handle_future
future.result()
File "/usr/lib/python3.11/concurrent/futures/_base.py", line 449, in result
return self.__get_result()
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/concurrent/futures/_base.py", line 401, in __get_result
raise self._exception
File "/usr/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/core/content/utils/resource_import.py", line 128, in _start_file_transfer
filetransfer.run()
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 691, in inner
func(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 730, in run
self.complete_close_and_finalize()
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 503, in complete_close_and_finalize
self.finalize()
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 670, in finalize
return super(FileDownload, self).finalize()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 572, in finalize
self._verify_checksum()
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 549, in _verify_checksum
if self.checksum and not self._checksum_correct():
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 684, in _checksum_correct
return self.dest_file_obj.md5_checksum() == self.checksum
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/kolibri/utils/file_transfer.py", line 418, in md5_checksum
raise ValueError("Cannot calculate MD5: Not all chunks are complete")
ValueError: Cannot calculate MD5: Not all chunks are complete