В NoDeny модуль ядра service займається також разморозкою послуг. Як це відбувається:
коли визивається процедура встановлення послуги, то послуга може заблокувати це і повернути помилку. Після чого модуль ядра буде намагатися повторити спробу через деякий час. Причому час
збільшується поступово щоб не забивати логи. При першій помилці 2 хвилини, потім 4, 8, 16, 32, 60 і далі не збільшується.
Коли послуга заморожена, то модуль ядра визиває разморозку (встановлення послуги) і якщо грошей не вистачає - модуль послуги повертає помилку. І проблема в тому, шо період retry доходить до 60 хвилин. Тобто юзер поповнює рахунок, а інет може включитися аж через 0..60 хвилин.
В помилці є параметр "фатальна". Для заморозки вона не фатальна. Це я зробив в Next щоб разморозка не забивала логі, тому що на кожну заморожену послугу кожні 2 хвилини був запис у логах "не вдалося встановити послугу". І я по цій ознакі (не фатальна) не писав у логі.
Тепер для нефатальних помилок я додатково зробив щоб не збільшувався період переустановки. Тобто при поповнені рахунку інет буде включен через 0-2хв