Failed jobs are only caught if there is an exception within the job itself. Any error that would happen outside of your fire() method (or whatever you call it) doesn't cause the job to be marked as failed.
I don't use Beanstalkd, but if the process stops the queues aren't lost, are they? If they persist then they should be processed when the process comes back up. You shouldn't need to mark them as failed since they haven't even been tried.
You might want to place the job into bury mode, and later you will be able to kick to the tube itself. As far as your connection refused is, check your machines conntrack and open socket setup, we had to raise from 64k to 400k to be able to run a system with thousands of jobs.
Sign in to participate in this thread!
We'd like to thank these amazing companies for supporting us