Всех наверное достали эти ошибки: Ошибка соединения с базой данных, отмена операции.., из-за которых нельзя сохранить убегу, а админ может быть не сможет прийти вовремя.
при любом чихе теперь база данных не будет блокироватся до следующей карты, т.к. это контрпродуктивно, мог возникнуть какой либо таймаут из-за того что база данных занята более важными делами на вроде резервной копии таблицы к которой идет запрос. Поэтому лучше просто писать игроку что произошла ошибка при операции с базой данных если операция не фоновая, а вызвана игроком.
Технина:
- Замена разнородных техник проверки на универсальную проверку DB_IsAvailable()
- Заменена функция DBLock на ErrorDuringDBOperation
- Если указатель базы данных пуст и статус базы данных не равен переподключению, то производим процедуру переподключения и пишем игроку когда база данных переподключится рекомендацию что подключение восстановлено и для избежания потери данных ему стоит повторить операцию на которой у него возникли ошибки с базой банных.
Рекомендуемые комментарии
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.