learningequality / kolibri-installer-android

Android wrapper for Kolibri.
MIT License
26 stars 22 forks source link

Overflow error when updating task progress #204

Closed bjester closed 7 months ago

bjester commented 7 months ago

Observed behavior

When importing a large channel, the tasks fail with the error below. It appears that pyjinius or something specific with the device may only have 32bit capabilities as the integer was the size of the channel in bytes, 6GB, and that's greater than a 32 bit integer is allowed to be

Errors and logs

2024-03-18 14:17:01.069 13415-14284 TaskWorker              org.learningequality.Kolibri         I  Traceback (most recent call last):
2024-03-18 14:17:01.070 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/job.py", line 329, in execute
2024-03-18 14:17:01.070 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/registry.py", line 238, in __call__
2024-03-18 14:17:01.071 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/content/tasks.py", line 271, in remotecontentimport
2024-03-18 14:17:01.072 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/content/utils/resource_import.py", line 211, in run
2024-03-18 14:17:01.073 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/content/utils/resource_import.py", line 256, in initialize_standalone_progress_tracking
2024-03-18 14:17:01.074 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/utils.py", line 329, in start_progress
2024-03-18 14:17:01.075 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/job.py", line 258, in update_progress
2024-03-18 14:17:01.076 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/storage.py", line 506, in update_job_progress
2024-03-18 14:17:01.076 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/python-for-android/build/python-installs/kolibri/arm64-v8a/kolibri/core/tasks/storage.py", line 676, in _update_job
2024-03-18 14:17:01.077 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "/home/runner/work/kolibri/kolibri/src/android_app_plugin/kolibri_plugin.py", line 71, in update
2024-03-18 14:17:01.078 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "jnius/jnius_export_class.pxi", line 872, in jnius.jnius.JavaMethod.__call__
2024-03-18 14:17:01.079 13415-14284 TaskWorker              org.learningequality.Kolibri         I    File "jnius/jnius_conversion.pxi", line 53, in jnius.jnius.populate_args
2024-03-18 14:17:01.080 13415-14284 TaskWorker              org.learningequality.Kolibri         I  OverflowError: value too large to convert to jint

Expected behavior

The tasks do not fail under normal circumstances

User-facing consequences

Large channels are not imported, unless importing in smaller pieces, which can be time consuming.

Steps to reproduce

Import CK-12 channel

Context

Kolibri 0.16.0 Kolibri for Android 0.1.0 Android 11