Neu Langsamen kategorie upload Fixen ...

Mavy

Aktives Mitglied
16. August 2017
3
2
Hallo,

Ich hatte seit langem Probleme Kategorien neu hoch zu laden, der Prozess wurde ab 700 kategorien langsamer und wenn es dann an die 1000 ging stand der Upload quasi komplett still.
Es war mir immer deswegen ein Graus kategorien neu hochzuladen. Ich habe in meiner verzweiflung extra den server gewechselt um mehr IO performance für den Upload zu haben - erfolglos.
Trotz fähiger Hardware versagt der Upload von mehr als 1000 Kategorien auf einmal.. der Server frisst sich einfach fest und ist dann aufgrund völliger IO überlastung trotz cache aud auslagerung
in den Arbeitsspeicher und Optimierungen an allen Komponenten am Ende seiner Ressourcen.

8 Kerne mit 64GB ram, SSD, Ubuntu 18.04, NGINX 1.14.0, PHP7.2-FPM und MySQL5.7 - und keine chance.

Ich habe dann herausgefunden das die Tabelle "jtl_connector_category_level" offenbar alle paar sekunden neu befüllt und dann wieder geleert wird ..
Weil sich diese allerdings als normale innoDB- Tabelle auf der Festplatte befindet und alle 2 sekunden etwa auf 4000 einträge anwächst dann wieder geleert wird schreit die SSD nach einiger Zeit keuchend nach seiner Mama.

Ich habe nun die Tabelle "jtl_connector_category_level" vom Typ "InnoDB" zum typen "memory" geändert und habe dadurch scheinbar sämtliche Probleme gelöst ..
statt eines Uploads der auch mal 6 stunden dauerte und regelmäßig wegen timeouts abbrach ist der ganze vorgang nach der umstellung in einem rutsch jetzt innerhalb von 15 minuten abgeschlossen gewesen.
(~4800 kategorien die ich vorher immer nur in schritten von höchstens 200 stück zuverlässig neu hochladen konnte)



ich habe aufgrund der Tabellen constraints diese einfach komplett gelöscht und neu erstellt:
(duch PHPmyAdmin exportiert und nur ENGINE=innoDB durch ENGINE=memory ersetzt)

SQL:
-- phpMyAdmin SQL Dump
-- version 4.8.5
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Erstellungszeit: 24. Jun 2019 um 15:46
-- Server-Version: 5.7.26-0ubuntu0.18.04.1
-- PHP-Version: 7.2.19-1+ubuntu18.04.1+deb.sury.org+1

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;


-- --------------------------------------------------------

--
-- Tabellenstruktur für Tabelle `jtl_connector_category_level`
--

CREATE TABLE `jtl_connector_category_level` (
  `category_id` int(11) UNSIGNED NOT NULL,
  `level` int(10) UNSIGNED NOT NULL
) ENGINE=memory DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `jtl_connector_category_level`
--
ALTER TABLE `jtl_connector_category_level`
  ADD PRIMARY KEY (`category_id`);

--
-- Constraints der exportierten Tabellen
--

--
-- Constraints der Tabelle `jtl_connector_category_level`
--
ALTER TABLE `jtl_connector_category_level`
  ADD CONSTRAINT `jtl_connector_category_level` FOREIGN KEY (`category_id`) REFERENCES `s_categories` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


Wawi-Version : 1.4.29.1
Shopware-Version : 5.5.10
Connector-Version : 2.2.1.4



ich habe bisher keine negativen auswirkungen feststellen können .. evtl kann jemand der den Connector betreut etwas dazu sagen ?


Mit besten Grüßen
- Markus
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: McAvity und Immanuel

Immanuel

Gesperrter Benutzer
24. August 2016
1.542
329
Hallo Markus, danke für deine ausführliche Erläuterung. Der Kategorie Upload ist durch das ständige Erstellen des Baumes ab einer bestimmten Kategorie Menge tatsächlich ein Flaschenhals des Connectors.
 

McAvity

Sehr aktives Mitglied
7. September 2016
595
146
@Immanuel

Wäre das dann nicht eine Idee, die in das produktive Plugin übernommen werden könnte? Oder spricht da was gegen?

MfG

McAvity
 

Immanuel

Gesperrter Benutzer
24. August 2016
1.542
329
Hallo @McAvity,

das könnte problematisch bei Servern mit wenig Arbeitsspeicher werden. Wir wollen den Kategorieupload dahingehend überarbeiten, dass diese Tabelle gar nicht mehr benötigt wird. Im nächsten Schritt aber werden erstmal alle Kategorien ordentlich übersetzt, sodass ein Kategorie Mapping gar nicht mehr nötig ist. Siehe dazu das Ticket CO-363 in unserem Issue Tracker. Wir testen gerade noch. Das Connector Release wird voraussichtlich kommende Woche erscheinen.
 

Mavy

Aktives Mitglied
16. August 2017
3
2
Diese Tabelle ist nie größer als 1 MB geworden, zudem habe ich meine max_heap_table_size auch nicht angehoben (standard ist 16MB)
(rauszufinden per sqlQry: SELECT @@max_heap_table_size )

Mit besten Grüßen
- Markus
 

Mavy

Aktives Mitglied
16. August 2017
3
2
villeicht ist es möglich das als Option bei der installation des Plugins auszuwählen,
so müsste nur an der Installationsroutine etwas geändert werden.
(einfacher haken: "Nutze ENGINE=MEMORY" für Temporäre Tabellen - ja/nein [x] )
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Kupons in Abhängigkeit von anderer Warengruppe oder Kategorie Allgemeine Fragen zu JTL-Shop 0
Kategorie löschen - Fehlermeldung JTL-Wawi 1.9 3
[NOVA TEMPLATE] Linke Seitenleiste in Kategorie Übersicht bzw. global ausblenden. Einrichtung JTL-Shop5 2
Neu Ebay DesignVorlage - Shop-Kategorie-Links passen nicht eBay-Designvorlagen - Fehler und Bugs 0
Neu Nur Kindartikel anzeigen in bestimmter Kategorie Allgemeine Fragen zu JTL-Shop 4
Neu Feld "priceCurrency" doppelt bei Vaterartikeln (Kategorie) JTL-Shop - Fehler und Bugs 0
Neu SMARTY-Änderungen beim Shopupdate von 5.2 auf 5.4 ... Kategorie-Funktionsattribute abfragen geht nicht mehr! Templates für JTL-Shop 5
Neu Problem bei der Anzeige von Hinweistexten für Produkte einer bestimmten Kategorie im NOVA Template Allgemeine Fragen zu JTL-Shop 1
Neu Filter "Kategorie" resultiert in 404 Fehler - Shop v 5.4.0 JTL-Shop - Fehler und Bugs 0
Neu Welche Template-Variable gibt die aktuelle Kategorie-ID zurück? Technische Fragen zu Plugins und Templates 3
Neu Kategorie für Webshop aktiv setzen unter Beibehaltung des aktiv-Status aller enthaltener Artikel User helfen Usern - Fragen zu JTL-Wawi 6
Neu Artikel Upload Probleme mit Wawi Version 1.9.6.5 und B2B Market Plugin WooCommerce-Connector 6
Neu Wofür genau steht CO-2770 - fix double image upload? Allgemeines zu den JTL-Connectoren 5
Wawi Fehler beim Upload 1.9 JTL-Wawi 1.9 1
Neu Probleme mit dem Meta-Crawler und 403 Fehler beim Meta-Datenfeed Upload User helfen Usern 0
Otto-Anbindung über JTL Wawi und Produkt-Upload JTL-Wawi 1.9 0

Ähnliche Themen