I recently upgraded an out-of-date tt-rss instance to the latest master commit (478c9b64a9). I’ve been using a systemd service to run update_daemon2.php for years now without issues, but after the update (and subsequent db and config migration), when I start update_daemon2.php the process immediately consumes all my available memory and my VPS locks up thrashing swap.

I’ve disabled the service and created another one (and associated systemd timer) to periodically run update.php --feeds instead and it’s working fine, but I wonder if others have encountered this issue and how I might go about debugging it for the sake of contributing back to the project.

Notes:

  • Single user install.
  • Not using docker (this instance was deployed before the docker config was launched, and I’ve just upgraded it – it’s running on a tiny VPS, and I’d sooner avoid overhead of docker here, tbh).
  • php version 7.3.31 (latest on Debian Buster).

Will be grateful for any thoughts anyone has to share.

Thanks!

Update: Seems like the problem was due to one specific feed. I’m not clear on why it wasn’t an issue before the update, but everything works as expected when I remove the offending feed.

Will update again if I can work out what the issue was (seemed to be stuck at the “favicon: trying to calculate average color…” step on said feed?).

Thanks all!

regardless of this particular case, maybe you should reduce memory limit configured for php. it seems like it’s set too high.

also this is a good illustration on how having swap is not always useful. without swap (or if using conservatively-tuned zram) you’d get at an OOM or two but won’t lock up your entire machine.

regardless of this particular case, maybe you should reduce memory limit configured for php. it seems like it’s set too high.

You’re absolutely right, yes, thank you for the nudge.

also this is a good illustration on how having swap is not always useful. without swap (or if using conservatively-tuned zram) you’d get at an OOM or two but won’t lock up your entire machine.

Yeah, I go back and forth on this one a bit. This is a tiny VPS and I’d be nervous to go without swap altogether, but I often use an early OOM killer on other systems – perhaps I should be using one here, too.

Very much appreciate your comments, thank you.