GCC Build Failure: A Debugging Mystery Caused by sbuild Refactoring

2024-12-22

Official Debian GCC builds started failing mysteriously after an sbuild refactoring. A team embarked on a six-stage investigation, ultimately uncovering a conflict between the new sbuild init system and a D language unit test. The test accidentally terminated its own process group, halting the build. The root cause was the use of -2 as a special PID value in the D language unit test, leading to SIGTERM signals being sent to the wrong process group. Switching back to the old init system or modifying the test code resolved the issue.

Development debugging