Показать сообщение отдельно
Старый 25.05.2009, 15:07   #1
prool
Занятой мадер
 
Регистрация: 24.09.2007
Адрес: Харьков
Сообщений: 149
По умолчанию Программистам: очень редкий, но зловредный глюк

Я кажется нашел причину очень редкого глюка моего мада, построенного на коде Былин, проявлявшегося в виде пропадания вещей у игроков. Глюк предположительно происходит из-за неудачного стечения обстоятельств при перезагрузке мада (выходе из мада), когда не все файловые буферы успешно сбрасываются на диск. При выпадениях мада в корку вероятность этого глюка немного больше, а при нормальных шатдаунах меньше. Иногда он проявляется в виде пропадания игрока или дружины (эти файлы тоже постоянно перезаписываются).

На всякий случай тупо вставил команду fflush(NULL) в модуль comm.cpp в процесс выхода из мада (после вызова free_db())

Посмотрим, чо будет

Еще раз повторюсь, глюк очень редко проявляется, чем чаще перезагрузки, тем больше вероятность глюка, а я перезагружаю свой мад несколько раз в день (экспериментирую, код правлю), но и то, глюк проявился 3-4 раза за два года. Былины перегружаются, как я понимаю, раз в неделю, у них вероятность этого глюка еще ниже (хотя больше юзеров и кланов, больше файловых буферов). Возможно это связано также с особенностями моей ОС (Free BSD 5.3 release p2) или даже с нагрузкой хостинговой машины
__________________
Prool

http://prool.kharkov.org
prool вне форума   Ответить с цитированием