Webcron dauert Stunden

Hallo,

wir haben den webcron (/var/www/html/nextcloud/cron.php) im Einsatz. Uns ist aufgefallen dass dieser Cron extrem lange braucht besonders der MYSQL “Creating sort index” Prozess. Woran könnte das liegen? Für unsere Zwecke soll der Cron regelmäßig durchlaufen und nicht erst alle 5-6 Stunden. Auch würden wir gerne wissen, was für Jobs dieser Cron abarbeitet. Es wird in der Config zwar eine “jobList = \OC::$server->getJobList” hinterlegt, jedoch ist uns nicht ersichtlich, was genau dort passiert.

Zudem würde ich gerne wissen, wo der Cron oder ob er überhaupt was in die Logs schreibt. Aus der Cron.php konnte ich zumindest “>$config->setAppValue(‘core’, ‘lastcron’, time());” herauslesen.

Mfg

Also der Cron sollte auch in die Logs schreiben. Webcron ist nicht die beste Lösung da Leistung und Speicher deutlich reduziert sein können. Mit den Datenbankindizes schau mal auf der Admin-Page, da meckert er falls da Indizes fehlen. Dort wird dann normalerweise in die Dokumentation verlinkt, wie man diese anlegt. Dadurch werden die Abfragen deutlich schneller.

Zur Korrektur: Ich nutze nicht den Webcron sondern den Systemcron. In der Admin-Page habe ich bezüglich Indizes keine Fehlermeldungen. Hier ist nur ein Warnung, dass bei einigen Spalten eine Konvertierung nach “big int” fehlt. Das hat aber wohl nichts mit meinem Problem zu tun.

Gibt es hier sonst noch Ideen, woran das liegen könnte?

Wenn die Länge der normalen integers nicht ausreicht, bräuchtest du big int. Ob es daran liegt?

Cron loggt auch in die Nextcloud log. Evtl. auch mal schauen, wenn der cron läuft, welche Ressourcen da an ihre Limits stoßen (CPU, RAM, I/O, …). Andere Möglichkeit wäre, dass die Datenbank-Caches ungünstig gewählt sind und die Abfragen sehr lange dauern.
Mit Thumbnails kann man auch an Limits stoßen, aber da würde ich eher weniger eine Indizes-Warnung erwarten.