bash.im ithappens.me zadolba.li
7368

IL happens

27 сентября 2011, 11:45

Работаю в небольшой программерской конторе. Продаём несколько собственных разработок на Яве, среди которых есть и программка для отчётов. Программа старая, многие люди, что над ней работали, ушли в лучшие места.

На одном из репортов софтина вдруг начала умирать, выжирая всю память. Тестеры три дня искали и обнаружили, что в одном из полей одной из таблиц есть значение «Wheelchair user», и если его поменять на «abc», то всё работает. Кто, блин, запрограммировал ненависть к людям с ограниченными возможностями? Стали пробовать разные варианты. Выяснилось, что «Wheelchair u» всё ещё падает, а вот «Wheelchai u» уже работает. Пошёл запускать локально — out of memory error. Нашёл метод. А там перед циклом, в котором и происходит переполнение, стоит коммент:

// FIXME: Infinite looping happens