Theme Ordner 1000 Unterordner

Hallo zusammen,

bei einem Shop der noch migriert wird läuft der theme Ordner komplett voll. Bei jedem Kompilieren werden mehrere Ordner neu erstellt.
In den meisten Ordnern sind noch der css und js Ordner, teilweise auch assets.
Mittlerweile sind es über 1000 Ordner mit ca 2gb gesamt.

Screenshot 2023-08-03 095543

Woran könnte das liegen? Der Shop ist in der .env auf „APP_ENV=prod“ gesetzt.

Zwei Plugins die hier evtl. reinspielen:

Wenn ich über die Konsole theme:compile ausführe werden ebenfalls mehrer Ordner neu erstellt ohne alte zu löschen.

Kann es mit Servereinstellungen zu tun haben? Ich weiß leider nicht wo ich mit dem Suchen zum Fehler anfangen kann.

Der Admin Worker / CLI worker sollte die Ordner nachträglich löschen. Läuft dieser evtl. nicht gerade bei dir korrekt?

Ansonsten kannst du die ganzen order auch löschen und einmal bin/console theme:compile machen, wenn es dringend ist :slight_smile:

1 „Gefällt mir“

Kann ich das irgendwie prüfen?

Also wenn ich „bin/console theme:compile“ ausführe, kommen eben mehrere neue Ordner und alte werden nicht gelöscht.

Hat dein Linux user ggf. eingeschränkte Rechte, die das Löschen untersagen? Wie sieht es mit dem log/cache aus, wird der korrekt geleert?

1 „Gefällt mir“

Die Worker sollten den ordner nach 15 minuten löschen. du kannst es auch abschalten mit

storefront:
    theme:
        file_delete_delay: 0

(config/packages/storefront.yaml)

Dann sollte es quasi direkt gelöscht werden

Danke, ich tippe mal da ist ein Problem.

Wenn ich cache:clear nutze wird unter var/cache auch wieder nur ein neuer Ordner angelegt, nichts altes gelöscht. Ich Denke das ist so nicht richtig oder?

Screenshot 2023-08-03 111512

Genutzt habe ich den Befehl als root User auf einem Plesk Server von Dogado direkt aus der Weboberfläche. Aber das gleiche Verhalten tritt ja auch aus dem Shop selbst aus.

Also eine Sache für den Hoster? Oder kann ich etwas irgendwo ändern?

Bei Dogado habe ich keine Erfahrung, aber wenn ich auf meinem privaten Server mit root über die CLI den Cache lösche mit bin/console cache:clear, dann bekomme ich einen 500er Fehler im Frontend, da www-data keine Zugriffsrechte hat.

root hingegen sollte eigentlich alles löschen können.

Was, wenn du über das Admin Backend den Cache leerst. Verschwinden dann die Fehler?

Was auch gut sein kann… wenn einmal die Ordner/Dateigröße zu groß ist, dann Läuft PHP in ein Out of Memory oder Out of Time, bevor es alle Dateiordner durchgegangen ist und erst dann anfangen würde zu löschen.

In dem Fall hilft meiner Erfahrung nach nur noch per rm auf der CLI die Ordner manuell zu löschen und wenn es wieder weniger Unterordner sind wieder Shopware/Symfiny übernehmen zu lassen.