Wir sind unser eigener Hoster. Durch das erhöhen der max execution time läuft der import nun durch. Er benötigt dennoch ca. 180 Sekunden um ca. 100 Datensätze zu aktualisieren. Gemeßen im DEV modus Ajax request duration.
Der Rest im Shop “rennt” förmlich. Noch eine Idee an was an liegen könnte?
wir haben derzeit das selbe Problem, allerdings etwas drastischer (6kB große .csv mit 40 Zeilen (Varianten eines Produkts)) dauert 66 Minuten. Die 40 Zeilen sind eigentlich Teil einer großen .csv mit etwa 1000 Zeilen. Die wiederum sind ein Teilbereich eines 4900-variantigen Produkts, von dem wir einige gerne verändern würden.
Im htop kann ich ebenfalls sehen, dass nur 2 Threads von MySQL und einer von Apache/PHP gleichzeitig auf mehr oder weniger Volllast betrieben werden. Ich nehme an das Limit entsteht daraus, dass MySQL einzelne Querys nicht wirklich selbst parallelisieren kann?
Deswegen präzisiere ich die ursprüngliche Frage hiermit:
Wäre es denkbar, mehrere Import-Anfragen gleichzeitig zu starten (z.B. via API die Requests des Backends nachbilden?) um das Problem zu lösen, ohne dass man gleich den ganzen Import-Code angreift damit er weniger Tabellen gleichzeitig erfordert/manipuliert? Oder würde das zu Nebenläufigkeitsproblemen führen?
Gibt es dazu Lösungsansätze?
Irgendein Shopware Update oder Server Update löste das Problem aus.
Servereinstellungen haben wir definitiv nicht geändert, aber ab ca. Anfang/Mitte Oktober laufen sämtliche Imports -extrem- langsam.
Der Server ist nur minimal ausgelastet.
Bei uns das gleiche Problem, scheint durch einen der letzten Patches ausgelöst worden zu sein. orher ging es alles relativ fix. Allmählich überlegen wir ob wir nich doch lieber wieder auf SW5 oder gar einen ganz anderen Shopsoftware Anbieter ausweichen sollten, SW6 hat unsere Probleme eher verschlimmbessert als verbessert… Schade, eigentlich war ich immer ein großer Fan von SW aber die Fanbase schwindet…
wir haben das Problem dann gelöst indem wir auf den direkten CSV-Import via vorgesehenem Modul verzichten und stattdessen die Sync-API via Python ansprechen.