You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 6, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Oct 6, 2026. It is now read-only.
Running Migrations causes systemd service timeouts on low-end hardware #66
At the moment, kolibri runs all the migrations on first run of 'kolbiri start'. Now this causes systemd service timeouts on low-end devices such as Raspberry Pi's. It doesn't happen always but sometime it does fail. I will try to zero in on which migrations take the most resources.
Following the discussion on slack, I am filing this bug as a placeholder for exploring other alternatives esp. when upgrading a device with lot of content.
Hi @arky I would like to know why you say the TimeoutStartSec=infinity is not a solution. It will solve the systemd timeout problem. Are you thinking of a different daemon start mode?
Btw, @benjaoming what do you think about changing KillMode=processto KillMode=mixed to ensure any child process is killed too when needed? As forking is used, it seems logical to use mixed
Now this causes systemd service timeouts on low-end devices such as Raspberry Pi's.
Could you send the timeout error message as it appears in logs? It would likely appear with sudo journalctl -x -u kolibri.service but also worth looking in /var/log/syslog.
@holta@arky what other services are running on the particular RPI? Is it possible to stop these services all-together when installing or upgrading Kolibri? We don't have control from within Kolibri to free up memory that's held by other processes.
kolibri.service now sets TimeoutStartSec=infinity, so startup migrations no longer hit the systemd timeout. The package now lives in the Kolibri monorepo; please open a fresh issue on learningequality/kolibri if this still reproduces.
Activity
jredrejo commentedon Feb 19, 2019
Hi @arky I would like to know why you say the
TimeoutStartSec=infinityis not a solution. It will solve the systemd timeout problem. Are you thinking of a different daemon start mode?Btw, @benjaoming what do you think about changing
KillMode=processtoKillMode=mixedto ensure any child process is killed too when needed? Asforkingis used, it seems logical to usemixedbenjaoming commentedon Feb 19, 2019
Could you send the timeout error message as it appears in logs? It would likely appear with
sudo journalctl -x -u kolibri.servicebut also worth looking in/var/log/syslog.holta commentedon May 11, 2019
Is iiab/iiab#1648 (
kolibri.servicefailing to start on certain Raspberry Pi's) possibly the very same issue ?benjaoming commentedon May 12, 2019
@holta @arky what other services are running on the particular RPI? Is it possible to stop these services all-together when installing or upgrading Kolibri? We don't have control from within Kolibri to free up memory that's held by other processes.
rtibbles commentedon Oct 4, 2026
kolibri.servicenow setsTimeoutStartSec=infinity, so startup migrations no longer hit the systemd timeout. The package now lives in the Kolibri monorepo; please open a fresh issue on learningequality/kolibri if this still reproduces.