Urgent.News

What's breaking now, across thousands of outlets.

Tech

My Digest Job Ran as Root for 41 Days. My App Couldn't Read a Single File It Wrote.

The email that ended it was four words long: "is the digest dead?" Fair question. The page had been loading fine every single morning. Header, date, footer, all rendered. Between the header and the footer: "No new items today." Forty-one days in a row, on a page that had been averaging 31 items a day since March. Nothing had crashed. No 500s, no restarts, no alerts. My uptime monitor was green…

The digest job ran for 41 days as root, and the app could not read any file it wrote. The problem was not in the reader, but in the system's response to the operating system indicating "no" files. The app's exception handling was inadequate, silently ignoring the exception and reporting success. The author found the issue after receiving a customer email and discovered that 41 files, owned by root, were unreadable by the app which ran as a different user.

Two decisions contributed to the issue: the job was run as root and the umask was set to 0o077. The fix involved running the job as the correct user, adjusting permissions on the output directory, adding a health check that runs as the app user, and logging exceptions.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

🎮 RIFTFIRE Got Rejected by CrazyGames — Here's What I'm Fixing Next

🎮 RIFTFIRE Got Rejected by CrazyGames — Here's What I'm Fixing Next The first submission didn't pass review. Here's what that means, what I changed, and what's coming in the next build.

  • RIFTFIRE rejected by CrazyGames due to lack of visual polish and unfinished feel
  • Developers added primary "CONTINUE" button for smoother level navigation
  • Implemented quick bar with eight boost items for enhanced gameplay

More from Friday 13 November →