Details
Description
See the forum post http://forum.civicrm.org/index.php/topic,18307.0
During testing of 3.3.3, I found a situation where civimail.cronjob.php was being repeatedly called but not sending any mails.
It turned out there was a Cancelled parent job with a Running child job. Each time the Running child job was selected to run, the delivery failed because the mailing had been cancelled. As the child job size exceeded the mailing limit, the cron job exited without making any progress, even though other jobs could have sent emails.
I think the appropriate fix is to cancel every job in the mailing when the mailing is cancelled.