Unter var/log habe ich folgenden wiederkehrenden Eintrag gefunden.
[2020-11-04 11:39:36] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: “No route found for “GET /Cron/”” at vendor/symfony/http-kernel/EventListener/RouterListener.php line 136 {“exception”:"[object] (Symfony\Component\HttpKernel\Exception\NotFoundHttpException(code: 0): No route found for “GET /Cron/” at vendor/symfony/http-kernel/EventListener/RouterListener.php:136, Symfony\Component\Routing\Exception\ResourceNotFoundException(code: 0): No routes found for “/Cron”. at vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php:70)"}
Kann ich eventuell versuchen die Indexierung über bin/console zu starten - gibt es hier einen Befehl dafür?
das selbe Problem habe ich auch und der Shop ist sehr träge und neue Produkte generieren, vorallem neue Varianten generieren geht sehr lange bis dahin das wir es abbrechen müssen. Ich habe schon alles mögliche in der CLI versucht und bis jetzt hat nichts gebracht. Leider finde ich keine möglichen Befehle die mir anzeigen wo er grade steht oder wie ich die Prozesse abbrechen könnte. Was auch interessant ist, die Anzahl was er indexieren möchte ändert sich immer wieder (mal sind es 150, mal sind es 200 usw.) aber erfolgreich beenden kann er es einfach nicht.
Jein.
Also es gibt keine konkrete Lösung wenn es ins minus geht - wir haben hier die händisch die Datenbank bereinigt um das zu lösen.
Wozu es schon eine Lösung gibt, es zum allgemeinen hängen/lahm sein.
Ich versuche das kurz zu erklären.
Also normalerweise führt Shopware wenn man im Backend eingeloggt ist diese Hintergrundarbeiten aus (oder versucht es zumindest). Da dies ein Ressourcenmäßig sehr begrenzter Hintergrundaufruf ist, bleibt diese sehr leicht stecken sobald mal mehr zu tun ist.
Als Begründung warum Shopware das so macht, habe ich gelesen dass es hauptsächlich für die Entwicklung gedacht ist. Damit Entwickler nicht noch mehr einrichten müssen um zu starten. Allerdings ist diese Hintergrundabarbeitung gar nicht für den Produktiv-Einsatz gedacht und sollte deaktiviert werden. Stichwort Admin-Worker deaktivieren.
Wie das geht und wie die Abarbeitung richtig gemacht werden sollte wird hier erklärt.
https://docs.shopware.com/de/shopware-6-de/tutorials-und-faq/scheduled-tasks-anlegen
Was hier nicht erwähnt wird, man kann um die ganze Sache noch zu beschleunigen mehrere messenger:consume Arbeiter gleichzeitig laufen lassen.
Wir richten hier meist 2 ein. Diese werden bei uns meist über eine Systemd-Unit gemanagt. So kann man sicherstellen, dass die Prozesse sich nicht doch mal überschneiden. Geht alternativ über cron auch.
Edit: Habe die Antwort als Code posten müssen weil anscheinend Links auf docs.shopware.com verboten sind lol.