Несколько часов искал ошибочно использованную переменную

Сегодня довольно долго искал простую ошибку. Причём ошибка возникала только на реальных данных и при реальном запуске проекта. Все тесты, которые были, и которые я пытался придумать, код проходил и с этой ошибкой. В конце концов нашёл. Оказалось, что я в одном сравнении использовал не ту переменную, которую нужно было.

Был вот такой код:

Ошибка была в условии: if (fullDaysInRowCounter == tempShift.getWorkSchedule().getMaxShiftsInRow()). Здесь вместо tempShift  нужно было использовать переменную hrPlanRec, которая имела несколько другое значение. Я долго изучал этот код, отлаживал его по шагам, пробовал писать разные тесты, но ошибка так и не поддавалась. Тут, скорее всего, воля случая. Если бы сегодня моя голова работала бы немного по-другому, то я бы запросто её нашёл. Честно говоря, уже давно не помню, чтобы так долго искал такие простые ошибки. Неудачно проснулся что-ли.

Вообще такие промедления бывают и у людей других специальностей. Какое-то не слишком удачное строение мозга. Оно вызывает вариативность принятия решений на одних и тех же данных. Воля случая, но не совсем рандом. У всех же было, что в одной и той же ситуации мозг принимал совершенно противоположные решения в зависимости от положения солнца, планет, погоды, настроения, геомагнитной обстановки и прочих вещей.

Два ребёнка за окном верёвку друг у друга перетягивают. Странно, никогда ещё не видел, чтобы в подобное играли в нашем дворе. Ладно. Что-то я совсем от темы отошёл. Дальше тут ещё про вариативность мышления нужно написать, про нестрогую алгебру и прочие кошерные вещи…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *