1

We're running Craft in an AWS environment that is configured using CentOS 7, Apache 2.4.x, PHP 7.4.x, PHP-FPM and we've noticed many of our queued tasks fail (sometimes only 8-10 minutes into the process) with the following error:

The process has been signaled with signal "9".

Perhaps I'm wrong, but this error seems like a low-level process is running the KILL command on processes that are taking too long to complete. However, I'm not sure where to look to debug this.

Are there any recommendations on where to check on these settings and how to prevent this?

2

I think this is a Symfony error for when the server kills your PHP process. Could be a timeout or exhaustion of RAM.

Are you using the Craft Async Queue plugin? It offloads these jobs to the PHP CLI to run in the background and lets you get around timeouts and jamming your site up.

I'd tail or grep through both your Craft error logs and Apache logs for hints too.

3
  • Good question! We do run the queue via the CLI with a cron job. So runQueueAutomatically is set to false and we have a cron job running every minute to send the queue/run command. Unfortunately, we've had no luck in the Craft logs, but the Apache logs are worth checking into! What about PHP-FPM logs? Anything there? Aug 9 '21 at 12:19
  • I don't know that the PHP-FPM logs would say much but don't rule them out. Check your cron logs too (/var/log/cron). For important cron jobs I like to use EasyCron (or a similar service) because they are super cheap and give you retry, debugging logs, etc. Check your RAM usage too in AWS for that VM. Spitballing here!
    – Judd Lyon
    Aug 10 '21 at 16:19
  • This was super helpful in determining the answer! Thanks very much for your suggestions, Judd Aug 12 '21 at 12:21
1

I wanted to post a follow-up in case anyone else encounters a similar error.

It appears the error itself is being reported by a Symfony library. But what it's reporting (in the case of a signal 9 error) is that the process was terminated via SIGKILL. The reason for this could be any number of things.

To troubleshoot further I ran some after-hours tests with our hosting partners and we determined that the servers were dealing with an out of memory (OOM) error. Seems the introduction of PHP-FPM in the infrastructure has changed the way the php processes are given memory and it's possible for them to use/require more than the previous infrastructure had.

We swapped the server instances we were using with ones that had significantly more memory. Once we did that the errors were no more!

Hope this is useful to anyone else encountering a "signal 9" error in their Craft queue.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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