Duplicate Magento Orders

I have a Magento site using version 1.6.2.0 with which I have problems with duplicate orders.

Having studied this topic, I found mainly forum topics explaining that there were problems with duplicate orders in 1.4.x , and the mentioned solutions (even those that were found in SO) simply suggest the user to upgrade Magento to >1.4 .

I also found the proposed solution here, but I do not want to remove observers that will interfere with the work of downloadable purchases.

I also noticed the Array Of Death fix mentioned several times (like here ), but this problem is missing in 1.6.x , Zend seems to have solved it.

A couple of Javascript hacks are proposed, according to which the order confirmation button is hidden during sending, but Magento 1.6.x already does this.

I have increased the payment gateway timeout configuration variable to 120 seconds and do not see if it will give any results. I can’t check this, because the problem is irregular (and this is probably due to the connection or its absence between the payment gateway and Magento).

I use Sagepay as a payment gateway.

How can I further debug this?

+7
source share
1 answer

The link you posted is correct, but I would not use their fix, I would just disable the Mage_Rss module.

There are several observers in Mage_Rss that call Mage :: app () β†’ cleanCache (...) during the verification process, which is very expensive if your installation uses the default file system cache and it becomes large.

I found the best thing I need to troubleshoot Magento is to plug in Xhgui and do some profiling. Reading call stacks will also help you understand Magento.

Oh, and I don’t know if this is true for Sagepay, but I went and completely fixed this problem for PayflowPro by rewriting a method that generates transaction IDs to use quoteID instead of generating unique identifiers for each call. I started to take this path, but I'm still on 1.4.2, and I don’t have time to test in later versions, and this is a pretty significant rewrite. Guess I could just put him there so that someone else could walk past Moses ...

+1
source

All Articles