s_articles_prices eigener Indize über 4 Spalten

Hallo,

ich habe bei der Tabelle s_articles_prices einen neuen Indize angelegt / unique über 4 Spalten.

pricegroup
to
articleID
articledetailsID
Soweit passt das, weil es hier ja auch keine doppelten Einträge geben sollte.

Hintergrund ist ein REPLACE INTO Befehl, damit man sich die Prüfung ob der Datensatz besteht also INSERT oder UPDATE sparen kann.

Nutze ich jetzt aber die Shopware REST API und mache ein Article Update, so bekomme ich einen Fehler:

An exception occurred while executing ‚INSERT INTO s_articles_prices (articleID, articledetailsID, pricegroup, from, to, price, pseudoprice, baseprice, percent) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)‘ with params [110810, 532339, „EK“, 1, „beliebig“, 84032.773109244, 0, 0, 0]

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‚EK-beliebig-110810-532339‘ for key ‚pricegroup_3‘"


Jetzt verstehe ich nicht, warum bei einem Article Update ein INSERT Befehl in die s_articles_prices gefeuert wird? Ich konnte über DOCTRINE etc. auch nicht weiter debuggen und die genaue Stelle lokalisieren.

Schlimmer für mich ist aber, dass der EntityManager geschlossen wird:

string(28) „The EntityManager is closed.“

 

Somit bricht der Import komplett ab. Über Recherchen ist das wohl ein bekannter Synfony Fehler:

Als Lösung wird u.a. angegeben den Entity Manager zu reseten. Leider habe ich keine Ahnung, ob ich bei Shopware an die Instanz komme oder ob das überhaupt Sinn macht.

 

Im Nofall muss ich meinen REPLACE Befehl wieder gengen INSERT und UPDATE tauschen und den Indize raus nehmen.

 

Hat dazu jemand Idden?

Danke & Gruß
Ottscho

 

 

 

 

 

Niemand eine Idee?