Уровень 0 · материалов: 3
В кластер входят документы с описанием конкретных технических причин возникновения программных сбоев и ошибок компиляции.
Общие признаки: технический разбор багов, ошибки реализации в коде, непредвиденное поведение ПО
Группа выше: Причины программных ошибок
Смысл: The text illustrates how a seemingly random and 'impossible' software bug can actually be the result of a precise combination of logic errors—in this case, a database constraint violation triggering a buffer overflow caused by the length of a specific string (the word 'Wednesday').
A developer discovers that a mysterious intermittent server crash was caused by a buffer overflow that only occurred on Wednesdays because 'Wednesday' is the longest day of the week in English.
Смысл: The text illustrates how a subtle misunderstanding of the Java Language Specification regarding bitwise shift distances in Long types led to a production bug in the Netty framework, causing specific characters to be erroneously treated as illegal HTTP tokens.
A bug in Netty 4.1.129.Final caused HTTP 400 errors for URLs containing 'M' or 'J' because of an incorrect bitwise shift implementation that collided with illegal character masks.
Смысл: The text illustrates a specific case of a compiler optimization bug where the compiler's attempt to optimize a loop led to incorrect machine code, a problem that spanned different vendors (IBM and Microsoft).
The author identifies a compiler bug where -O2 optimization incorrectly optimizes a bit-shifting loop, and resolves it by changing the loop's logic.