5

I recently upgraded from Magento CE 1.9.0.1 to 1.9.1.

I read that emails are supposed to be sent via a queue/cron but after some testing this turned out to not be true.

When I place an order the email is sent immediately, just like before upgrading to 1.9.1.

I put some Mage::log() statements in Mage_Core_Model_Email_Queue::send() to verify. The method is being executed via cron every minute, but no messages are ever present in the queue to be processed.

My question is this: Do I need to enable some setting somewhere or did I miss anything?

1 Answer 1

3

I've been researching this area of Magento 1.9.1 and from what I can see all new order or order update emails will now be routed through the queue. For example this is the sendNewOrderEmail() function now.

public function sendNewOrderEmail()
    {
        $this->queueNewOrderEmail(true);
        return $this;
    }

And the queueNewOrderEmail() function forces the email into the queue.

To be sure you can add debug in the class Mage_Core_Model_Email_Template send() function to check that it uses the queue. You can also check the queued email table: core_email_queue.

However, based on my research so far - I have not been able to find any other emails that are sent through the queue - for example contact form emails appear to send normally, in the same way they used to. Which does not seem consistent with the release notes:

all Magento e-mails (including order confirmation and transactional) are now queued

I'll post another question on that as I'd like to be sure.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.