DB Upgrade erfolglos

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.257
1.195
Morgen,

generell ist die DB / der Shop von Shop 2 hochgezüchtet.

Diverse Infos und Fehler:

1)
Diese "one row" Fehler
Fehler bei Update: "SQLSTATE[21000]: Cardinality violation: 1242 Subquery returns more than 1 row" in: /var/www/vhosts/xxxx/httpdocs/update/migrations/20190909161500_remove_box_scroll_configs.php
Fehler bei Update: "SQLSTATE[21000]: Cardinality violation: 1242 Subquery returns more than 1 row" in: /var/www/vhosts/xxx/httpdocs/update/migrations/20200417082200_remove_customer_recruting_data.php
usw usw usw
sind, naja, etwas "suboptimal".

Ich musste bei rund 20 migrations php Dateien, händisch, in der DB massenhaft doppelte Zeilen löschen, händisch! -> wäre es nicht sinnvoller, den Updater/das removeConfig so zu gestalten, wenn eh schon der komplette Config-Eintrag gelöscht werden soll, dass es vollkommen egal ist, ob der Wert 1x 5x oder 100x vorkommt?
Wie die dort reinkommen müsst ihr euch wohl selbst fragen, kann mir nicht vorstellen, dass da jemals ein Plugin hand angelegt hat, wir garantiert nicht.

2)
Struktur Migration DB (DEV, vorher noch "alle" Statistiken usw. gelöscht):
Scheinbar auch nicht wirklich zuverlässig :(

Laut "Berechnung" rund 30 mins - nach 15-20 Mins, abgebrochen mit:
Fatal error: Uncaught TypeError: Return value of JTL\Shopsetting::getSectionData() must be of the type array, int returned in /var/www/vhosts/xxxxx/httpdocs/includes/src/Shopsetting.php:246 Stack trace: #0 /var/www/vhosts/xxxxx/httpdocs/includes/src/Shopsetting.php(187): JTL\Shopsetting->getSectionData() #1 /var/www/vhosts/xxxxx/httpdocs/includes/src/Cache/JTLCache.php(465): JTL\Shopsetting->JTL\{closure}() #2 /var/www/vhosts/xxxxx/httpdocs/includes/src/Shopsetting.php(191): JTL\Cache\JTLCache->get() #3 /var/www/vhosts/xxxxx/httpdocs/includes/src/Shopsetting.php(263): JTL\Shopsetting->offsetGet() #4 /var/www/vhosts/xxxxx/httpdocs/includes/src/Shop.php(839): JTL\Shopsetting->getSettings() #5 /var/www/vhosts/xxxxx/httpdocs/includes/src/Session/AbstractSession.php(36): JTL\Shop::getSettings() #6 /var/www/vhosts/xxxxx/httpdocs/includes/src/Session/Backend.php(45): JTL\Session\AbstractSession->__construct() #7 /var/www/vhosts/xxxxx/httpdocs/includes/src/Session/Backend.php(36): JTL\ in /var/www/vhosts/xxxxx/httpdocs/includes/src/Shopsetting.php on line 246

php 7.3
keine plugins aktiviert
cache deaktiviert

kein einloggen mehr ins backend auch kein safe-mode möglich.

Hab das jetzt 2x durchgespielt, denn beim ersten mal war ich mir nur zu 99.99% sicher, den Cache deaktiviert zu haben.
Jetzt bin ich 100% sicher, zumind. beim zweiten mal ist garantiert kein Cache gelaufen.

Stoppt, laut backend, bei teinstellungenconf, schritt 1
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.257
1.195
Nur mühsam durch suchen in der entsprechenden angegebenen migrationsdatei, da JTL hier nichts zur Verfügung stellt oder so clever ist, einen Eintrag einfach selbst zu entfernen.

Du schaust dir die Fehlermeldung an, öffnest die entsprechende migrations php. Dort wird auf die Tabelle/Eintrag verwiesen.
Dies suchst dir dann via phpmyadmin raus und löscht einen Eintrag davon.
In diesen Migrationsdatein stehen dann 5-20 einträge, die musst dir halt jeweils selbst heraussuchen und in den Tabellen dann alles, einzeln, danach suchen, bis du den/die richtigen Übeltäter findest.

Scheinbar sind das uralt-Leichen von vorherigen JTL Versionen, denn wir haben diese duplicate garantiert nicht angelegt, wozu auch.
 
  • Gefällt mir
Reaktionen: tomyweb

Ähnliche Themen