Warenkorb verschwindet teilweise

Hallo,

ich hatte nun schon öfters mal Kunden, die sich beschwert haben, dass nur ein Teil ihres Warenkorbs abgesendet worden ist.
Alle diese Kunden haben keine Bestätigungsmail erhalten und ich habe auch keine Mail erhalten. Lediglich im Shop Admin sieht man die Bestellung, aber unvollständig.
Was könnte die Ursache für diesen Fehler sein? Verwende CE 4.4.3

steht im admin bei status irgendwas auffälliges, also im ordner bestellungen verwalten bestellungen übersicht rechts 2 zeilen unter der bestellnummer ??

ja, da steht error bei “interner status”.
ich hatte mit einem Kunden Kontakt und der gab an, dass er die refresh button gedrückt hatte nach dem letzten Schritt, weil es so lange dauerte.
Es häuft sich seit einem Serverumzug, jede Woche 4-5 Fälle. Ich habe es selbst getestet, da hat alles funktioniert. Es betrifft immer große Bestellungen mit 50+ Artikeln…

Hallo,

Lange Ladezeiten im letzten Bestellschritt deuten darauf hin, dass der SMTP-Server in den Stammdaten nicht korrekt eingetragen ist. Habt Ihr das ggf. beim Umzug vergessen?

[QUOTE=Administrator;58294]Es betrifft immer große Bestellungen mit 50+ Artikeln…[/QUOTE]
50+ gleiche Artikel pro Position oder 50+ Positionen mit unterschiedlichen Artikeln?

Gruß

Hallo Marco,

unter smtp steht localhost und die beiden Felder smtp Benutzer und Passwort sind leer. War eigentlich schon immer so. Ist das ein Problem?
Serverseitig gibt es keine Fehlermeldungen, kein abgebrochenes Script oder ähnliches. Hardware ist ausgelegt auf ein Vielfaches an Last, Speicherzuteilung, Scriptlaufzeiten usw. sind alle sehr hoch eingestellt.

Gruß

Christian

Hallo Christian,

erkundige Dich mal beim neuen Hosting Provider über die SMTP-Einstellungen (URL, User, Passwort) auf Eurem Server. Das könnte schon die Lösung sein, damit geht auf jeden Fall der Bestellschritt schneller.
Behalt bitte trotzdem mal die halb übertragenen Warenkörbe im Auge und sag mir Bescheid, wenn Du wieder ähnliches feststellen kannst.

Danke und Gruß

Hallo Marco,

danke für die schnelle Antwort. Ich werde das auf jeden Fall testen.
Habe heute mit einer Kundin telefoniert. Sie hat zweimal versucht, per Vorauskasse zu bestellen (lief also über keinen externen Partner wie ipayment). Beim ersten Mal kam nach dem Absenden der Bestellung eine weiße Seite. Beim zweiten Mal ging die Bestellung durch, aber sie erhielt keine Email und ich auch nicht. Zudem wurden bei beiden Bestellungen nur die Hälfte der Artikel übertragen.
Der Gesamtbetrag und alle andereren Kundendaten werden korrekt übertragen.

Der Fehler tritt wirklich nur bei großen Bestellungen auf, ausnahmslos.
Leider lässt sich das nicht so richtig reproduzieren. Bei Versuchen von unterschiedlichen Personen gingen auch große Bestellungen mit vielen Artikeln ohne Probleme durch. D.h. das Problem scheint nicht generell aufzutreten.

Spielt es eigentlich eine Rolle, wie lange sich der Kunde im Shop aufhält? Bzw. sammeln sich da eventuell Daten an, die das Ganze aufblähen?
Kann efire etwas damit zu tun haben? Werden nach Bestellabschluss Daten zwischen dem Oxid Shop und efire ausgetauscht?

Gruß

Christian

Hallo Christian,

ich denke eher an etwas ganz anderes: Während die oxorder-Klasse abgearbeitet wird, werden zunächst über eine Schleife alle Artikel in die Datenbank geschrieben. Ich könnte mir vorstellen, dass - mal unterstellt - die Datenbankverbindung wärend dieses Vorgangs abreisst und das Script an dieser Stelle abbricht. Wo liegt denn Deine Datenbank, auf dem localhost?

Gruß

Salut,

Probleme bei dem versenden der E-Mail an dieser Stelle ist mir auch schon mal untergekommen. Aber das war ein Einzelfall und lag wirklich am Mailserver bzw. config.

Hier dürfte wirklich die Anzahl der Artikel ein Rolle spielen, also ähnlich wie Marco dies schildert. Frage mal bei deinem Provider nach ob es eventuell der Server an dieser Stelle an seine Grenze stößt (also Memorylimit oder CPU).

ceau

Was sagen die exception logs? Da müsste was drin stehen.

In den exception logs steht nichts zu den Zeitpunkten, in denen die Fehler auftraten.
Hardware: Eigener Server mit 4x3,2Ghz und 8GB Ram ist.
memory_limit auf 96M ist und max_execution_Time auf 500

Ich habe nun meinen Provider nochmal gebeten, sich das anzuschauen.

Anbei eine phpinfo, vielleicht weiß jemand Rat :wink:

Ich kann das Problem jetzt reproduzieren und zwar in drei Shops auf demselben Server. Ein Testshop, zwei laufende Shops.
Ich erhalte Fehlermeldung wie folgende:
Fatal error: Out of memory (allocated 50069504) (tried to allocate 3475 bytes) in /var/www/web3/html/core/adodblite/adodbSQL_drivers/mysql/mysql_driver.inc on line 197

Nun ist es aber so, dass mein Provider das Speicherlimit auf 500MB hochgesetzt hat, das muss doch reichen?
Produkte im Warenkorb: zwischen 80-100 Stück, teilweise schon ab 60 Stück.

hat keiner eine idee, woran das liegen bzw. wie man das beheben kann? Kann man den timeout genauer protokollieren lassen bzw. das was oxid nach dem Absenden der Bestellung macht?

Hi,

ich sehe in der Fehlermeldung 50MB. Kann sein, dass das an dieser Stelle ein wenig dünne ist. 500MB wären wesentlich zu viel: Das fliegt Dir bei vielen gleichzeitigen Benutzern um die Ohren.

Kannst Du mal in der phpinfo nachschauen, wieviel denn nun wirklich bei memory_limit eingetragen ist?

Gruß

Hallo,

Problem endlich gelöst! Die memory_limit Einstellung ist nicht die einzige Möglichkeit, den Speicher zu begrenzen. Der Apache hat jedem Benutzer nur 50MB zur Verfügung gestellt, auch wenn bei memory_limit ein wesentlich höherer Wert eingetragen war. Nach dem Entfernen dieser Bremse gingen auch die großen Bestellungen durch, für die wohl deutlich mehr als 50MB Speicher benötigt werden.

Gruß