Fehlermeldung beiDB Update

Hallo zusammen,
beim Update auf 5.7.2 Bekomme ich den Fehler

Error
Received the following error message:
Could not apply migration (Migrations_Migration1704). Error: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Medien-Galerie-81' for key 'name_idx'

Please try to fix this error and restart the update.
Response
{"valid":false,"errorMsg":"Could not apply migration (Migrations_Migration1704). Error: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Medien-Galerie-81' for key 'name_idx' "}

Leider weiß ich nicht aus welcher Tabelle und bin daher etwas Ratlos wo ich was suchen/Löschen muss. Hat einer eine Idee?

Hallo,
such mal nach einer Datei mit dem Namen " ```
Migrations_Migration1704

Darin wirst du sehr wahrscheinlich SQL-Code finden aus dem du die Tabelle ablesen kannst.

YES! Da steht was. :smiley: OK, ich suche von da an…


class Migrations_Migration1704 extends Shopware\Components\Migrations\AbstractMigration
{
    public function up($modus)
    {
        $updates = [
            ['Artikel', 'product'],
            ['Kategorie-Teaser', 'category_teaser'],
            ['Blog-Artikel', 'blog_article'],
            ['Banner', 'banner'],
            ['Banner-Slider', 'banner_slider'],
            ['Youtube-Video', 'youtube'],
            ['Hersteller-Slider', 'manufacturer_slider'],
            ['Artikel-Slider', 'product_slider'],
            ['HTML-Element', 'html_element'],
            ['iFrame-Element', 'iframe'],
            ['HTML5 Video-Element', 'html_video'],
            ['Content Type', 'content_type'],
            ['Code Element', 'code_element'],
        ];

        foreach ($updates as $update) {
            $sql = sprintf('UPDATE s_library_component component SET component.name = "%s" WHERE component.name = "%s"', $update[1], $update[0]);
            $this->addSql($sql);
        }

        $sql = 'ALTER TABLE `s_library_component` ADD UNIQUE INDEX `name_idx` (`name`, `pluginID`)';
        $this->addSql($sql);
    }
}

In der Tabelle ist der Eintrag mit z.B. „Name“
Medien-Galerie-81

Wenn du den Eintrag vorher löscht sollte es funktionieren.
Der Eintrag scheint aber schon 2 mal vorhanden zu sein. Es wird nur am Ende beim ALTER TABLE ein unique-index erzeugt, der vermutlich vorher noch nicht da war, deshalb hats die DB nicht gejuckt. Einfach alle bis auf einen der Einträge mit Name
Medien-Galerie-81
löschen.

Jup, es waren 4 einträge von

Medien-Galerie emotion-netzp-gallery NULL Medien-Galerie gallery netzp-gallery 81

Vorhanden. Habe 3 davon gelöscht, jetzt lief das Update durch. Backend ist auch wieder erreichbar, allerdings die Shopseite ansich nicht. Da kommen nun Fehler 500 und ich suche weiter…

Wenn du zugriff auf die Apache2/Nginx logs deiner Installation hast, solltest du da eine exaktere Fehlermeldung finden.
Kannste ja mal posten und ich befrage erneut meine Kristallkugel :wink:

Hab ich schon parralel gehabt. :smiley: es waren die HB Rechtstexte.


#0 /var/www/clients/.../.../web/engine/Shopware/Plugins/Community/Backend/HbdevRechtstexte/Components/HBHelper.php(25): Shopware->__call()
#1 /var/www/clients/.../.../web/engine/Shopware/Plugins/Community/Backend/HbdevRechtstexte/Subscriber/Index.php(40): HbdevRechtstexte\Components\HBHelper->__construct()
#2 /var/www/clients/.../.../web/engine/Library/Enlight/Event/Handler/Default.php(87): HbdevRechtstexte\Subscriber\Index->onFrontEndPostDispatch()
#3 /var/www/clients/.../.../web/engine/Library/Enlight/Event/EventManager.php(214): Enlight_Event_Handler_Default->execute()
#4 /var/www/clients/.../.../web/engine/Library/Enlight/Controller/Action.php(219): Enlight_Event_EventManager->notify()
#5 /var/ww" while reading response header from upstream, client: ..., server:....de, request: "GET /media/image/29/82/d9/x2018-12-26-13-26-03_200x200.jpg.pagespeed.ic.bN4FGpYH_T.webp,%20https:/.../media/image/e6/c0/5a/2018-12-26-13-26-03_200x200@2x.jpg HTTP/1.1", upstream: "fastcgi://unix:/var/lib/php5-fpm/web8731.sock:", host: "..."

Naja, das behoben ich sehe das Frontent wieder und

Ups! Ein Fehler ist aufgetreten!
Wir wurden bereits über das Problem informiert und arbeiten an einer Lösung, bitte versuchen Sie es in Kürze erneut.

Menü ect ist weg… Also das update hatte es in sich.