Neu Probleme nach Upgrade 4.06 auf 5.0 - SQL Query blockiert Datenbank

ManuelDold

Aktives Mitglied
27. Dezember 2011
20
0
Hallo,

ich habe heute morgen unseren Shop vom 4.06 auf 5.0 upgraded.

Hat mit der Anleitung https://guide.jtl-software.de/jtl-s...ionen/von-jtl-shop-4-auf-jtl-shop-5-upgraden/
auch gut funktioniert.

Bei der Migration der DB gab es bei ein paar Tabellen Fehlermeldungen, siehe Fehler_Migration.png.
Fehler_Migration.PNG
Das wurde auch in der Übersicht so angezeigt:
Migration_Fehler_Datenbankpruefung.PNG
Durch klicken auf die Zahnräder konnte die Migration aber erfolgreich durchgeführt werden, siehe Admin_allgemein.png
Admin_allgemein.PNG

Der Shop und das Backend haben dann wie erwartet funktioniert, es wurden nur einige Kategoriebilder nicht angezeigt.
Also in die Wawi und einen Komplettabgleich gestartet.

Dann kamen die ersten Fehlermeldungen 503.
Fehler_ShopAbgleich_3.PNG

Kurz darauf ging garnichts mehr, der Shop war nicht mehr erreichbar und das Backend auch nicht.


503.PNG

Der Notfall Support vom Hoster ( Hetzner) gab mir folgende Rückmeldung:

-------------------
Folgende Query blockiert hier Ihre Datenbank:
################################
SELECT ssMerkmal.cSeo, ssMerkmal.kMerkmal, ssMerkmal.kMerkmalWert, ssMerkmal.cMMWBildPfad,
ssMerkmal.nMehrfachauswahl, ssMerkmal.cWert, ssMerkmal.cName, ssMerkmal.cTyp,
ssMerkmal.cMMBildPfad, COUNT(DISTINCT ssMerkmal.kArtikel) AS nAnzahl
FROM (SELECT tmerkmalwertsprache.cWert, tmerkmalwertsprache.cSeo, tmerkmal.cName, IF(EXISTS (SELECT 1
FROM tartikelmerkmal AS im1
INNER JOIN tartikel AS innerProduct ON innerProduct.kArtikel = im1.kArtikel
WHERE innerProduct.kVaterArtikel = 0 AND im1.kMerkmalWert IN (430, 475, tartikelmerkmal.kMerkmalWert)
AND im1.kArtikel = tartikel.kArtikel
GROUP BY innerProduct.kArtikel
HAVING COUNT(im1.kArtikel) = (SELECT COUNT(DISTINCT im2.kMerkmal)
FROM tartikelmerkmal im2
INNER JOIN tartikel AS innerProduct ON innerProduct.kArtikel = im2.kArtikel
WHERE innerProduct.kVaterArtikel = 0 AND im2.kMerkmalWert IN (430, 475, tartikelmerkmal.kMerkmalWert))), tartikel.kArtikel, NULL) AS kArtikel, tartikelmerkmal.kMerkmal, tartikelmerkmal.kMerkmalWert, tmerkmalwert.cBildPfad AS cMMWBildPfad, tmerkmal.nSort AS nSortMerkmal, tmerkmalwert.nSort, tmerkmal.cTyp, tmerkmal.nMehrfachauswahl, tmerkmal.cBildPfad AS cMMBildPfad
FROM tartikel
#JOIN from JTL\Filter\States\BaseCharacteristic::getSQLJoin
JOIN (SELECT kArtikel
FROM tartikelmerkmal
WHERE kMerkmalWert = 3152
GROUP BY tartikelmerkmal.kArtikel
) AS tmerkmaljoin ON tmerkmaljoin.kArtikel = tartikel.kArtikel

#join1 from JTL\Filter\Items\Characteristic::getState
JOIN tartikelmerkmal ON tartikel.kArtikel = tartikelmerkmal.kArtikel

#join2 from JTL\Filter\Items\Characteristic::getState
JOIN tmerkmalwert ON tmerkmalwert.kMerkmalWert = tartikelmerkmal.kMerkmalWert

#join4 from JTL\Filter\Items\Characteristic::getState
JOIN tmerkmal ON tmerkmal.kMerkmal = tartikelmerkmal.kMerkmal

#join default lang from JTL\Filter\Items\Characteristic::getState
INNER JOIN tmerkmalwertsprache ON tmerkmalwertsprache.kMerkmalWert = tartikelmerkmal.kMerkmalWert
AND tmerkmalwertsprache.kSprache = 1

#product visiblity join from getBaseQuery
LEFT JOIN tartikelsichtbarkeit ON tartikel.kArtikel = tartikelsichtbarkeit.kArtikel
AND tartikelsichtbarkeit.kKundengruppe = 1
WHERE tartikelsichtbarkeit.kArtikel IS NULL AND tartikel.kVaterArtikel = 0

) AS ssMerkmal
GROUP BY ssMerkmal.kMerkmalWert
ORDER BY ssMerkmal.nSortMerkmal, ssMerkmal.nSort, ssMerkmal.cWert
################################

Die Query wurde beendet, über PHPMyAdmin können Sie hier bei Bedarf blockende queries mittels "SHOW FULL PROCESSLIST" einsehen, mittels "KILL <id>" beenden.
-------------------------------


Das Problem ist damit bekannt. Wenn man die Anfragen über phpmyadmin löscht, funktioniert für ein paar Minuten wieder alles.


phpmyadmin.png


Habt Ihr ne Lösung für mich?

Vielen Dank für eure Hilfe!


Manuel
 
Zuletzt bearbeitet:

ManuelDold

Aktives Mitglied
27. Dezember 2011
20
0
Update:

der Fehler mit der überlaufenden SQL Query kommt nur, wenn der Shop nicht im Wartungsmodus ist. Hat also was mit dem Shop und nicht mit dem WAWI-Abgleich zu tun.

Ich denke die Datenbank Migration hat doch nicht fehlerfrei funktioniert.

Migration_Fehler_tkategorieartikel.PNG

Migration_Fehler_tkategoriepict.PNG

Migration_Fehler_tlink.PNG

Migration_Fehler_tseo.PNG

Migration_Fehler_Datenbankpruefung.PNG

nach Anklicken der Zahlräder wurden keine Fehler mehr angezeigt...

Admin_allgemein.PNG

Trotz zwei maligem Komplett-Abgleich aus der Wawi werden noch keine Kategoriebilder angezeigt.



Viele Grüße
Manuel
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
527
Halle
Hallo, wenn du ausschließen kannst, dass die Tabellen durch echte Nutzerprozesse während der Migration gesperrt waren (Wartungsmodus aktiv!?), dann könnten die Meldungen auch auf defekte Tabellen hindeuten. Ich würde hier für jede betroffene Tabelle mal ein
SQL:
REPAIR TABLE <tabellenname>
und zusätzlich für alle Tabellen aus der blockierenden Query auch mal ein
SQL:
ANALYZE TABLE <tabellenname>
ausführen.
 

ManuelDold

Aktives Mitglied
27. Dezember 2011
20
0
Hallo,

vielen Dank.

Der Wartungsmodus war während dem Update natürlich aktiviert. Worker war auch ausgeschaltet.
Wodurch kann die Datenbank / einzelne Tabellen noch gesperrt sein?
Durch das Shop-Backend?


Nach erneutem Komplett-Abgleich mit der Wawi heute Nacht, sind die Kategoriebilder nun auch da und der Shop läuft zumindest mal.

Die SQL Query läuft trotzdem noch voll, wenn auch nicht mehr so schnell...
processlist.PNG

Ich habe nun wie empfohlen repair und analyze durchgeführt:


repair_tkategorieartikel.PNG
repair_tkategoriepict.PNG
repair_tlink.PNG
repair_tseo.PNG

analyze_tkategorieartikel.PNG
analyze_tkategoriepict.PNG
analyze_tlink.PNG
analyze_tseo.PNG


scheint keines Auffälligkeiten zu geben...


Problem besteht weiterhin:

processlist_nach_repair.PNG

SELECT ssMerkmal.cSeo, ssMerkmal.kMerkmal, ssMerkmal.kMerkmalWert, ssMerkmal.cMMWBildPfad,
ssMerkmal.nMehrfachauswahl, ssMerkmal.cWert, ssMerkmal.cName, ssMerkmal.cTyp,
ssMerkmal.cMMBildPfad, COUNT(DISTINCT ssMerkmal.kArtikel) AS nAnzahl
FROM (SELECT COALESCE(tmerkmalsprache.cName, tmerkmal.cName) AS cName, COALESCE(fremdSprache.cSeo, standardSprache.cSeo) AS cSeo, COALESCE(fremdSprache.cWert, standardSprache.cWert) AS cWert, IF(EXISTS (SELECT 1
FROM tartikelmerkmal AS im1
INNER JOIN tartikel AS innerProduct ON innerProduct.kArtikel = im1.kArtikel
WHERE innerProduct.kVaterArtikel = 0 AND im1.kMerkmalWert IN (447, 6937, tartikelmerkmal.kMerkmalWert)
AND im1.kArtikel = tartikel.kArtikel
GROUP BY innerProduct.kArtikel
HAVING COUNT(im1.kArtikel) = (SELECT COUNT(DISTINCT im2.kMerkmal)
FROM tartikelmerkmal im2
INNER JOIN tartikel AS innerProduct ON innerProduct.kArtikel = im2.kArtikel
WHERE innerProduct.kVaterArtikel = 0 AND im2.kMerkmalWert IN (447, 6937, tartikelmerkmal.kMerkmalWert))), tartikel.kArtikel, NULL) AS kArtikel, tartikelmerkmal.kMerkmal, tartikelmerkmal.kMerkmalWert, tmerkmalwert.cBildPfad AS cMMWBildPfad, tmerkmal.nSort AS nSortMerkmal, tmerkmalwert.nSort, tmerkmal.cTyp, tmerkmal.nMehrfachauswahl, tmerkmal.cBildPfad AS cMMBildPfad
FROM tartikel
#join1 from JTL\Filter\Items\Characteristic::getState
JOIN tartikelmerkmal ON tartikel.kArtikel = tartikelmerkmal.kArtikel

#join2 from JTL\Filter\Items\Characteristic::getState
JOIN tmerkmalwert ON tmerkmalwert.kMerkmalWert = tartikelmerkmal.kMerkmalWert

#join4 from JTL\Filter\Items\Characteristic::getState
JOIN tmerkmal ON tmerkmal.kMerkmal = tartikelmerkmal.kMerkmal

#non default lang join1 from JTL\Filter\Items\Characteristic::getState
LEFT JOIN tmerkmalsprache ON tmerkmalsprache.kMerkmal = tmerkmal.kMerkmal
AND tmerkmalsprache.kSprache = 2

#non default lang join2 from JTL\Filter\Items\Characteristic::getState
INNER JOIN tmerkmalwertsprache AS standardSprache ON standardSprache.kMerkmalWert = tartikelmerkmal.kMerkmalWert
AND standardSprache.kSprache = 1

#non default lang join3 from JTL\Filter\Items\Characteristic::getState
LEFT JOIN tmerkmalwertsprache AS fremdSprache ON fremdSprache.kMerkmalWert = tartikelmerkmal.kMerkmalWert
AND fremdSprache.kSprache = 2

#product visiblity join from getBaseQuery
LEFT JOIN tartikelsichtbarkeit ON tartikel.kArtikel = tartikelsichtbarkeit.kArtikel
AND tartikelsichtbarkeit.kKundengruppe = 1
WHERE tartikel.kHersteller = 11 AND tartikelsichtbarkeit.kArtikel IS NULL AND tartikel.kVaterArtikel = 0

) AS ssMerkmal
GROUP BY ssMerkmal.kMerkmalWert
ORDER BY ssMerkmal.nSortMerkmal, ssMerkmal.nSort, ssMerkmal.cWert


Viele Grüße
Manuel
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
527
Halle
Hallo Manuel,
kannst du diese Abfrage mal kopieren und im phpMyAdmin mit einem EXPLAIN davor ausführen und mir das Resultat posten (ggfs. auch per PN)!?
SQL:
EXPLAIN
SELECT ssMerkmal.cSeo, ssMerkmal.kMerkmal, ssMerkmal.kMerkmalWert, ssMerkmal.cMMWBildPfad,
...
 

ManuelDold

Aktives Mitglied
27. Dezember 2011
20
0
Ich bitte um Ihre Hilfe.
Ich habe gestern ein Ticket dazu erstellt: Ticket#2020122710000684 , Zugangsdaten haben sie mit dem Ticket bekommen
 

ManuelDold

Aktives Mitglied
27. Dezember 2011
20
0
HILFE !

Ich sitze jetzt schon den ganzen Tag vor dem Rechner und lösche nebenher alle 2-3 Minuten die SQL Queries.

Ansonsten hängt sich der Server auf und der Shop läuft nicht mehr.

Wir haben massive Umsatzausfälle.

Es muss dringend eine Lösung her.

Das Ticket wurde am Sonntag abend erstellt, ich hätte hier eine Lösung innerhalb von 24 Stunden erwartet.

Können Sie bitte dafür sorgen, dass Ticket#2020122710000684 morgen früh gleich bearbeitet wird?


Viele Grüße
Manuel Dold
 

Anhänge

  • phpmyadmin_2020_12_28_2251.png
    phpmyadmin_2020_12_28_2251.png
    157,4 KB · Aufrufe: 25
  • server_fehler.PNG
    server_fehler.PNG
    9,6 KB · Aufrufe: 25
Zuletzt bearbeitet:

okh

Gut bekanntes Mitglied
20. Oktober 2007
588
4
Buchholz
gab es zu dem Fall eine Lösung? Wir stehen seit 14 Tagen vor dem gleichen Problem. Ticket ist seit dem 11.03. unbeantwortet.
 

artm

Sehr aktives Mitglied
22. Februar 2021
107
26
bei Screenshots kann man erkennen, dass einige Tabellen immer noch MyISAM Storage nutzen statt InnoDB, vielleicht das könnte bei Migration zu Fehler führen
 

xadoX

Sehr aktives Mitglied
11. September 2012
650
58
Wir haben aktuell das gleiche Problem mit diesem SQL. Gab es hierzu eine Lösung?

Hab den Explain auf zwei System ausgeführt:

Live- Shop wo die Abfrage 30 Sekunden benötigt:

langsam.jpg

Dev-Shop wo die Abfrage in 200ms abgearbeitet ist
schnell.png
 
Zuletzt bearbeitet:

xadoX

Sehr aktives Mitglied
11. September 2012
650
58
Lösung gefunden: Wir hatten in der Tabelle tArtikelMerkmal einen Index, der im JTL-Standard nicht gesetzt ist. Nach dem Löschen ging es wieder schnell.

Unbenannt.jpg
 
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu Probleme nach Shop Update auf V5.6 Onlineshop-Anbindung 3
Neu Probleme mit dem erstellen eines Profils in der Datenbankverwaltung JTL-Wawi - Fehler und Bugs 1
Neu Habt ihr auch Probleme mit dem Google Merchant Center? Allgemeine Fragen zu JTL-Shop 6
Probleme Fehlermeldung bei Zahlungsabgleich JTL-Wawi 1.10 10
Neu Probleme mit WMS-Inventur JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 0
Probleme mit dem Ebay-Abgleich JTL-Wawi 1.11 1
Neu Probleme bei der Umstellung von Varkombi auf Konfigurationsartikel User helfen Usern - Fragen zu JTL-Wawi 0
Am eigenen Lager Bestand = 0, bei FBA = 170, Probleme mit dem eigenen Shop und Otto.de JTL-Wawi 1.10 3
Probleme Versanddatenexport DHL International JTL-Wawi 1.11 1
Neu Probleme bei WooCommerce JTL-Connector, keine Aktivierung möglich, Bestands-Shop lahmgelegt Onlineshop-Anbindung 0
Neu Probleme mit Pixel-Code eines Drittanbieters in Templatedatei Betrieb / Pflege von JTL-Shop 1
Probleme mit dem Einstellen von Artikeln auf Amazon über JTL Wawi mit dem Lister 2.0 Amazon-Lister - Fehler und Bugs 6
Neu Encoding-Probleme mit dem Proto-Template Templates für JTL-Shop 7
Neu PayPal Checkout Plugin (iPhone), Probleme mit PayPal-App Plugins für JTL-Shop 0
Neu Probleme beim Abgleich mit dem WooCommerce-Connector WooCommerce-Connector 0
Wir haben Probleme beim Abgleich mit Amazon Amazon-Anbindung - Fehler und Bugs 42
Neu Weiterleitungen Probleme Allgemeine Fragen zu JTL-Shop 2
Neu Probleme mit der Email über jtl hosting (plesk) User helfen Usern 2
Neu Teilweise Probleme mit Kindartikel anlegen User helfen Usern - Fragen zu JTL-Wawi 5
Steuer Einstellung bei Sonderpreis und nach OSS Landauswahl JTL-Wawi 1.10 0
JTL-Wawi App (1.11.x) – Lizenz angeblich belegt nach Löschen aller App-Registrierungen / kein Reset möglich JTL-Wawi App 2
Neu JTL-Wawi 1.11.4 – Vaterartikel lässt sich nach Entfernen eines Kindartikels nicht mehr speichern JTL-Wawi - Fehler und Bugs 3
Neu POS doppelte Artikel und Kategorien nach Update Einrichtung / Updates von JTL-POS 0
Neu Bons werden nach Wechsel auf neue Kasse nicht mehr signiert Allgemeine Fragen zu JTL-POS 0
Neu Downloadmodul – Keine Reiter "Downloads" und keine Download nach Bestellung möglich Technische Fragen zu Plugins und Templates 6
Neu Nach Update auf JTL Shop 5.6.1 - Play/Pause Buttons im Layout!? Installation / Updates von JTL-Shop 6
Nach Update auf 1.11.4 (von 10.13.1) werden keine Artikel unter F2 Artikel mehr angezeigt, sind aber da! JTL-Wawi 1.11 0
Neu Artikel werden nach Löschung in Shopify nicht neu aus der WaWi übertragen Shopify-Connector 2
Neu Nach Lieferantennummer suchen User helfen Usern - Fragen zu JTL-Wawi 3
Neu Nach Update komme ich nicht mehr auf die Shop Seite Installation / Updates von JTL-Shop 6
Neu REST API - POST /customers - Response 401 / 502 nach gewisser Zeit? Schnittstellen Import / Export 2
Kleiner Bug > Wareneingang > Tastenbeschriftung ändert sich nach einmaligem Klicken JTL-Wawi 1.11 0
Neu Workflow zum automatischen Stornieren einer Rechnung nach Versand User helfen Usern - Fragen zu JTL-Wawi 4
Nach Update 1.11.4: Keine Zahlungen mehr sichtbar JTL-Wawi 1.11 0
Problem nach dem Update. JTL-Wawi 1.11 2
seit 1.11 wird Druck ausgeführt nach JTL-POS Vorgang JTL-Wawi 1.11 0
Issue angelegt [WAWI-86213] Kartonagen nicht mehr über Workflow auswählbar nach Update auf 1.11.3 JTL-Workflows - Ideen, Lob und Kritik 1
Neu Nach Update auf 2.4.0 kein Bestell- & Artikeldatentransfer mehr möglich WooCommerce-Connector 0
Neu JTL-POS Absturz nach Benutzeranmeldung JTL-POS - Fehler und Bugs 0
Neu OPC-Bilder werden nach Update auf 5.6.0 nicht mehr generiert JTL-Shop - Fehler und Bugs 3
Neu Nach Update auf neueste Shop-Version – Datenbank plötzlich leer / Wie weiter? Backup, Rollback oder neu aufsetzen? JTL-Shop - Fehler und Bugs 9
Neu URL Weiterleitungen / SEO URLs nach Umzug User helfen Usern - Fragen zu JTL-Wawi 0
Neu Plugin: DITH Mengenrabatt – Warenkorbrabatte nach Stückzahl (mix + match), ohne Preisänderung am Artikel Plugins für JTL-Shop 0
Sporadischer Absturz beim Bearbeiten eines Artikel - nach Klick auf speichern JTL-Wawi 1.11 7
Nach Auftragsabschluss falsche Artikelbestände im Shop JTL-Wawi 1.9 0
Bug in Version 1.11.2 – Alle Drucker-Einstellungen gehen nach Neustart verloren JTL-Wawi 1.11 19
Packplatzwaage geht nur einmalig nach Zuweisung JTL-Wawi 1.11 10
Wawi friert nach wählen eines beliebigen Menüpunktes ein JTL-Wawi 1.11 5
Neu alte blogbilder nach wechsel immer noch sichtbar Allgemeine Fragen zu JTL-Shop 1
Zugriff auf Artikel und Bestellungen nach Update nicht möglich JTL-Wawi 1.11 0

Ähnliche Themen