moonkan (moonkan) wrote,
moonkan
moonkan

Блядь. Нарыл в коде коллеги, который уже несколько лет как уволился, жесткую связь с БД. Грубо говоря если в БД идут "уровни бюджета" 700, 800, 900 - то будет один результат вычисления бюджета, а если 700, 800, 850, 900 - то совершенно другой ...
причем никаких if(X == 800) там нету, неа.
Там сделано хитро, идет сначала один
if(rs.next)
{
грузим данные с базы
}
потом внзапно
if(rs.next и тут еще пару условий)
{
грузим еще данные для бюджета
if(rs.next и тут еще пару условий)
{
грузим еще данные для бюджета
}
}
Условия состоят в сравнении определенных параметров из ответа БД, и подобраны так, что для "случая" "водитель уровня 900" проходятся все 3 if-a, для 800 - 2 и для 700 - только первый. Бюджеты загружены.

Я получаю запрос сдублировать уровень 800 под именем 850 (хз зачем им это), проверяю код, вроде никаких особых правил для уровня 800 не нахожу и спокоен. АВОТХУЙ. благодаря всем спецусловиям в загрузке бюждета теперь 700 и 800 работают как раньше, 850 наполовину как 900 а 900 - вообще нет. Я сука 2 часа искал как так то?

кросспост с https://moonkan.dreamwidth.org/
Tags: все ебанулись, пиздец, программирование, техника
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 11 comments