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
529
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
529
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
27
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
659
65
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
659
65
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 beim Erstellen von Artikeln aus Angeboten von eBay User helfen Usern - Fragen zu JTL-Wawi 1
Neu Probleme beim Mailversand User helfen Usern 0
Probleme mit Worker und JTL-App JTL-Wawi 2.0 5
Neu Probleme mit Import Datenbank vom Server auf lokal JTL-Wawi 2.0 User helfen Usern - Fragen zu JTL-Wawi 4
Häufiges Aufhängen - vermutlich Probleme mit der Datenbank JTL-Wawi 2.0 10
Probleme bei der Verbindung zur Datenbank JTL-Wawi 2.0 12
Neu JTL2DATEV Buchungsdatenservice Probleme User helfen Usern - Fragen zu JTL-Wawi 0
Neu Probleme mit Ninepoint und TikTok Shop Schnittstellen Import / Export 6
Probleme mit JTL Worker JTL-Wawi 2.0 1
Neu Immer wieder Probleme beim Abgleich, hängt löscht was auch immer Shopify-Connector 0
Neu Probleme mit Inaktive Verkaufskanäle User helfen Usern - Fragen zu JTL-Wawi 0
Neu Shop 5.6.1: Probleme beim Entfernen von Artikeln aus dem Warenkorb JTL-Shop - Fehler und Bugs 5
Neu Checkout Probleme mit Pflichtfeldangaben Allgemeine Fragen zu JTL-Shop 4
Neu Wawi Filter probleme User helfen Usern - Fragen zu JTL-Wawi 0
Neu WAWI 2.0.2 Auftragsuche nach Ebay-Benutzernamen funktioniert nicht JTL-Wawi - Fehler und Bugs 1
Zugriff verweigert nach Umzug auf neuen Rechner, X-Rechnung kann nicht gespeichert werden JTL-Wawi 1.11 1
Neu Nach Update auf 1.11.9 - alle Shopify Shop nicht mehr connected Shopify-Connector 4
Neu Error 500 Fehler nach Dropper Installation Betrieb / Pflege von JTL-Shop 2
Neu Nach Update in Dez 2025 wird TSE Swissbit nicht mehr erkannt JTL-POS - Fehler und Bugs 1
Nach Update auf 2.0 auf einmal kostenpflichtig JTL-Wawi 2.0 2
Neu Druck nach jeder Position JTL-POS - Fragen zu Hardware 1
Neu Nach Umstellung DHL Versenden 4.0 wird Kleinpaket nun auf DHL Paket Labeldrucker ausgegeben statt auf Kleinpaketdrucker JTL-ShippingLabels - Fehler und Bugs 5
Inaktive Verkaufskanäle lassen sich nicht löschen – erscheinen nach Löschen und Speichern erneut JTL-Wawi 1.11 0
Nach Update auf 2.01 kein Worker mehr JTL-Wawi 2.0 13
Neu JTL Pos liest keine Verkäufe mehr ein nach Update Einrichtung / Updates von JTL-POS 0
Nach Update auf Wawi 2.0.X, API v1 Fehler JTL-Wawi 2.0 9
Neu SQL-Server geht eine Stunde nach Allgemeine Fragen zu JTL-Shop 4
Neu eBay-Vorlage übernimmt alten Artikelnamen nach Duplizieren – Bug oder Bedienfehler? JTL-Wawi - Fehler und Bugs 2
Login Zeiten nach User in Wawi 1.6 JTL-Wawi 1.6 0
Neu Problem nach Update auf Shop 5.6.1 - Impressum JTL-Shop - Fehler und Bugs 2
Neu Fehlermeldung nach der Umstellung von DHL Versenden 4.0 JTL-Track&Trace - Fehler und Bugs 7
Neu Refresh nach Abgleich User helfen Usern - Fragen zu JTL-Wawi 0
Neu Artikel letzte 10 Versanddaten, sortiert nach Datum mit Plattform Eigene Übersichten in der JTL-Wawi 4
Neu Stücklisten nach Artikelkopie nicht mehr direkt änderbar – Bug oder gewollte Änderung? JTL-Wawi - Fehler und Bugs 1
Neu Strukturierte Daten vom Typ "Produkt" werden nach Update auf JTL Shop 5.6.1 nur fehlerhaft erkannt JTL-Shop - Fehler und Bugs 3
Neu JTL POS - nach Gerätetausch - Standard-Datenbank hinterlegen Einrichtung / Updates von JTL-POS 1
Neu Pickliste nach Teillieferung automatisch löschen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Was genau passiert nach dem zurücksetzen? WooCommerce-Connector 0
Neu DSGVO – Automatisierte Löschung von Kundendaten nach 10 Jahren (JTL-Wawi / JTL-Shop) User helfen Usern - Fragen zu JTL-Wawi 2
Neu nach Update nicht alle Rechnungen mehr an Amazon Amazon-Anbindung - Fehler und Bugs 0
Neu OPC friert beim speichern von Änderungen ein nach JTL-Shop Update von Version 5.1.5 auf 5.6.1 JTL-Shop - Fehler und Bugs 6
Neu Sortierung nach Produkt Kategorie Arbeitsabläufe in JTL-Wawi 0
Export Zahlungen Amazon marketplace bei Kombi OSS und FBA erfolgt nach JTL2DATEV unvollständig JTL-Wawi 1.9 0
Neu Nach Shopupdate http error 500 JTL-Shop - Fehler und Bugs 9
Neu Abfrage Pakete nach Gewicht, Menge und durchschnittliches Gewicht Eigene Übersichten in der JTL-Wawi 0
Serienmails aus dem Shop nach Kundenimport Einrichtung JTL-Shop5 0
Neu POS-Server startet nicht mehr nach WaWi-update auf Version 1.11.6.0 JTL-POS - Fehler und Bugs 1
Neu Upgrade CFE auf Advanced Allgemeine Fragen zu JTL-Shop 7
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 500 Upgrade JTL-Shop4 auf JTL-Shop5 3
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 404 Upgrade JTL-Shop4 auf JTL-Shop5 11

Ähnliche Themen