Hoofdmenu

1062 Duplicate entry '1' for key 'idx_acumulus_entry'

Gestart door Formidog, 10 juli, 2020, 11:59:22

Vorige topic - Volgende topic

Formidog

Bij een batchverzending vanuit Hikashop krijg ik de volgende mededeling:

1062 Duplicate entry '1' for key 'idx_acumulus_entry'

Waar en hoe los ik dit op?


> het verwijderen van de laatste batch lost niets op, de melding blijft en er wordt niets meer verzonden

Bedankt
Dick

Guido

Dat klinkt als een bug met een dubbele entry in de database van de webwinkel. Ik verplaats de vraag even naar het onderdeel van het forum over de webshopkoppelingen. Ik zal ook Erwin, die de koppeling ontwikkeld heeft vragen of het hem iets zegt.

Ik neem aan dat je de meest recente versie van de plugin gebruikt?

- Guido

Formidog

Ik gebruik inderdaad de laatste plugin

en ook in de tabellen zie ik geen dubbele entry.

Ik ben recent geswitched naar Acumulus en voer nu in vanaf 1-1-2019, in batches van een maand.
t/m sept 2019 ging alles prima (behoudens de Gateway Errors).

De melding ontstond halverwege okt 2019.
In een poging te controleren welk record weigert heb ik okt 2019 verwijderd... maar er wordt nu niets meer geaccepteerd.



erwin-burorader

Dit gaat idd fout. Om dit snel op te lossen voer je deze query via bv phpmyadmin uit:

delete from {prefix}acumulus_entry where entry_id = 1;

Boekstuknummer 1 wordt gebruikt voor een speciaal geval, nl. om te beveiligen tegen dubbele verzending. Als je de tabel bekijkt zul je bij dat record in het veld token de tekst "Send locked, delete if too old" zien staan. Bij het inbouwen van die beveiliging had ik de unique restrictie van index idx_acumulus_entry moeten verwijderen. Dit zal nu in een update functie van de volgende versie gebeuren, maar je kunt dat nu ook al handmatig aanpassen, ook via phpmyadmin.

Formidog

Okee en bedankt voor je snelle reactie

Ben ik de enige met een HikaShop?

Dick


erwin-burorader

Nee, je bent niet de enige, maar heel veel zijn het er volgens mij ook niet. Op zich zou deze fout niet zo maar mogen optreden, want pas als het verzenden verkeerd gaat en de lock wordt niet opgeruimd kan dit gebeuren. De php code doet altijd een poging om de lock te verwijderen, ook in geval van min of meer ernstige fouten, alleen in php zijn niet alle fouten af te vangen, soms stopt het programma er mee.

Formidog

#6
Voor mijn gevoel gaat Lang niet alles goed wanneer ik de orders vanuit Hikashop naar Acumulus verzend

A. Als resultaat krijg ik in Acumulus heel veel dubbele regels
B. In de databasetabel staan regels met een entry-id van 8 cijfers, die hebben een geldig token. Er staan ook bijna 300 regels met een entry-id van 6 cijfers. Die hebben geen token, maar de tekst "Send locked, delete if too old".

Voor A heb ik de dubbele verwijderd
Wat adviseer je voor B?

Dick