Erhalte neuerdings öfters folgende Fehlermeldung: Fatal error: Uncaught exception ‘PDOException’ with message ‘SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘2147483647’ for key ‘PRIMARY’’ in /var/www/web508/html/solarripp/store/engine/Enlight/Vendor/Zend/library/Zend/Db/Adapter/Pdo/Abstract.php:263 Stack trace: #0 /var/www/web508/html/solarripp/store/engine/Enlight/Vendor/Zend/library/Zend/Db/Adapter/Pdo/Abstract.php(263): PDO->exec(’???REPLACE I…’) #1 /var/www/web508/html/solarripp/store/engine/Enlight/Enlight/Components/Adodb.php(83): Zend_Db_Adapter_Pdo_Abstract->exec(’???REPLACE I…’) #2 /var/www/web508/html/solarripp/store/engine/core/class/inherit/myArticles.php(105): Enlight_Components_Adodb->Execute(’???REPLACE I…’) #3 /var/www/web508/html/solarripp/store/engine/core/class/sRewriteTable.php(66): myArticles->sCreateTranslationTable() #4 /var/www/web508/html/solarripp/store/engine/Shopware/Plugins/Default/Frontend/RouterRewrite/Bootstrap.php(148): sRewriteTable->sCreateRewriteTable(‘2012-02-28 16:4…’) #5 /var/www/web508/html in /var/www/web508/html/solarripp/store/engine/Enlight/Vendor/Zend/library/Zend/Db/Adapter/Pdo/Abstract.php on line 280 Wer kann helfen?
Hallo, kann das sein, dass es dort individuelle Anpassungen gibt? Auszug: myArticles-\>sCreateTranslationTable()
Erzeugt wird die Meldung scheinbar beim Generieren von SEO-Urls Zumindest ist mindestens ein Datenbankeintrag bereits vorhanden und dieser Fehler wird angezeigt.
Sehr geehrter Herr Klöpper, vielen Dank für Ihre Antwort. Von welchen Anpassungen an welcher Stelle sprechen Sie? Können Sie mir helfen und mitteilen, wie ich den doppelten Datenbankeintrag finden kann!?
Hallo, ich habe gerade noch einmal gegoogelt: http://www.sebastianviereck.de/wordpres … 483647-ab/ Hier scheint also das Limit der Datenbank-Zelle für INT-Werte erreicht zu sein. Vermutlich die Zelle s_core_rewrite_urls.id Die Frage ist nun, warum dieser hoher INT-Wert überhaupt erreicht werden konnte. Das ist eine fortlaufende ID und bedeutet, dass es 2147483647 Einträge in der Datenbank geben muss. Theoretisch kann der Feld vo INT auf BIGINT in der Struktur der Datenbank geändert werden. Das ist allerdings nicht getestet! Hier sollte also eher nach der Ursache gesucht werden, wie es zu dieser enorm großen Datenbank bzw. ID kommen kann. Nach meinen Infos gibt es bisher keinen Shop, der diesen hohen Wert überhaupt erreicht hat. Wann das für den Shop allerdings nicht so relevant ist, kann man auch die Tabelle s_core_rewrite_urls einmal komplett leeren. Dann fangen die IDs wieder bei 1 an. Ggf. Folge vieler kompletter Neu-Importe, bei denen die SEO-URLs nicht berücksichtigt wurden. Wenn es also immer neue Artikel mit neuen Artikel-IDs gibt erzeugt die SEO-Engine hier auch immer einen neuen Link. (Besser sind immer Artikel-Updates) Die alten müssen erhalten bleiben, um bei Namensänderung von Artikeln SEO-freundlich auf die neue URL umleiten zu können. Das ist jetzt ein Vermutung auf Basis der Fehlermeldung und der genannten ID und sollte natürlich im Detail geprüft werden.
[quote=“Sebastian Klöpper”]Hallo, ich habe gerade noch einmal gegoogelt: http://www.sebastianviereck.de/wordpres … 483647-ab/ Hier scheint also das Limit der Datenbank-Zelle für INT-Werte erreicht zu sein. Vermutlich die Zelle s_core_rewrite_urls.id Die Frage ist nun, warum dieser hoher INT-Wert überhaupt erreicht werden konnte. Das ist eine fortlaufende ID und bedeutet, dass es 2147483647 Einträge in der Datenbank geben muss. Theoretisch kann der Feld vo INT auf BIGINT in der Struktur der Datenbank geändert werden. Das ist allerdings nicht getestet! Hier sollte also eher nach der Ursache gesucht werden, wie es zu dieser enorm großen Datenbank bzw. ID kommen kann. Nach meinen Infos gibt es bisher keinen Shop, der diesen hohen Wert überhaupt erreicht hat. Wann das für den Shop allerdings nicht so relevant ist, kann man auch die Tabelle s_core_rewrite_urls einmal komplett leeren. Dann fangen die IDs wieder bei 1 an. Ggf. Folge vieler kompletter Neu-Importe, bei denen die SEO-URLs nicht berücksichtigt wurden. Wenn es also immer neue Artikel mit neuen Artikel-IDs gibt erzeugt die SEO-Engine hier auch immer einen neuen Link. (Besser sind immer Artikel-Updates) Die alten müssen erhalten bleiben, um bei Namensänderung von Artikeln SEO-freundlich auf die neue URL umleiten zu können. Das ist jetzt ein Vermutung auf Basis der Fehlermeldung und der genannten ID und sollte natürlich im Detail geprüft werden.[/quote] Hallo Sebastian, ich habe eben in der DB die Tabelle s_core_rewrite_urls angeschaut. Die Tabelle hat “nur” 51889 Datensätze. Daher kann die Meldung also nicht kommen. Artikel werden über das Backend CSV importiert. Der Fehler muss eine andere Ursache haben. Hast du noch eine Idee?
Hi Ottscho, schau mal ggf. in die Tabelle: s_articles_translations Dort könnten auch sehr hohe IDs sein. Diese Tabelle ist für die Suche z.B. zuständig. Gerade bei der Nutzung von einem Subshop ist diese wichtig. Über einen Cronjob kann man die “Übersetzungstabelle” auch neu erzeugen lassen. Ansonsten wird diese automatisch beim Anlegen und Bearbeiten für den jeweiligen Artikel aktualisiert. http://wiki.shopware.de/Plugin-CronRefr … l_698.html