"Если вдруг открылся люк, не пугайся, это глюк!" (с) Если что-то работает не так, вы нашли ошибку или опечатку в программе — вам в этот раздел
Spectre A.V.
:evil: Вчера столкнулся с IT-проклятием, не знаю как назвать это по-другому. :evil:

Ничто не предвещало беды.

Появился у нас новый сотрудник, и, естественно, чат ему тоже нужен. И понеслось. Фамилия - Гераскин. Обычная такая русская фамилия. Логин - geraskin

Значит после добавления пользователя в подразделение вылетают ВСЕ клиенты с ошибкой что-то вроде "Обратитесь к администратору". Возвращаю снэпшот, перезапускаю сервер чата, пользователи перезапускают клиентов. Ну, думаю, что-то с id не то. Переименовываю одного из старых пользователей в geraskin. Вроде все ОК, ничего не отпало, супер.

Так вот, когда он входит на своем компьютере в чат, происходит следующее:

1. Вылетают опять же ВСЕ клиенты.
2. Его машина вылетает в синий экран и после перезагрузки уже не включается никакими способами, т.е. даже биос не грузится.
3. Намертво зависает Hyper-V на хостовой машине, причем это касается только машины с чатом, остальные крутятся нормально. Но эту машину нельзя ни перегрузить (ошибка интеграционных компонентов), ни нажать ctrlaltdel (нет клавиатуры).

На сервер нельзя зайти по RDP.

Ну ок, перегружаем хост с Hyper-V. Не выключается, завис на завершении работы Hyper-V.

Жду минут 30-40 с надеждой. Нифига. Выключаю кнопкой.

Включаю. Вентиляторы крутятся на максимуме, продувается. Минут 10 на экране ничего не появляется.
По коже пробегает легкий холодок :shock: . У меня на этом хосте еще 5 продакшн виртуалок и корпоративная шара документов на 500 гиг. Выключаю сервер, выдергиваю провода питания иду курить и думать как же плохо что сегодня не пятница.

Включаю. Фух, экран загорелся, все винты живые, система загрузилась.
А в списке Hyper-V тупо нет виртуалки с чатом, обрубил он ее.

Бэкаплю папки, клею снэпшоты, создаю новую виртуалку, подключаю кленный vhd. Загрузилось.

Все это дело сопровождалось такими вот ошибками на хосте (лог виртуалки девственно чист от ошибок кроме того, что система неожиданно завершила работу)

Конфигурация Virtual Machines типа
55DED342-8295-4770-B6EC-B16B1743DADE на "E:\HyperV\Chat" больше не
доступна: Запрошенную операцию нельзя выполнить для файла с открытой
пользователем сопоставленной секцией. (0x800704C8)

"Chat" не удается получить доступ к папке данных виртуальной машины.
Возможно, рабочий процесс с ИД Запрошенную операцию нельзя выполнить
для файла с открытой пользователем сопоставленной секцией.
функционирует неправильно. (ИД виртуальной машины
55DED342-8295-4770-B6EC-B16B1743DADE)


Сбой сохранения "Chat"; ошибка была пропущена для обеспечения
продолжения завершения работы виртуальной машины. (ИД виртуальной
машины 55DED342-8295-4770-B6EC-B16B1743DADE)

Не удается загрузить конфигурацию виртуальной машины из-за ее
повреждения. (ИД виртуальной машины
55DED342-8295-4770-B6EC-B16B1743DADE). Удалите файл конфигурации
(XML-файл) виртуальной машины и вновь создайте виртуальную машину.

Предыдущее завершение работы системы в 18:51:59 на ?10.?10.?2013 было
неожиданным.


Все остальные машины, слава аллаху, сохранили свою память и не пришлось ничего восстанавливать.

Создал пользователя с логином gsm (пробовать больше не хотелось) - все пошло нормально.

Версия чата 4.14.0

Мои варианты:

1. Этот логин каким-то неведомым способом вызвал адское переполнение памяти, причем на сервере и у клиентов, т.к. они повылетали. ID были совершенно нормальные, 182, 183, переименовывали старый - тоже самое.
2. У кого-то из разработчиков есть заклятый враг с этой фамилией и он решил его достать везде любыми способами.
3. Нужно сходить в церковь (кстати, остальные логины создавал исключительно крещеный человек)
4. Проклятие, юзеру стоит сходить к бабке.

Если у кого-то еще есть такая же версия чата в тестовой среде, попробуйте, ради интереса создать такого пользователя.

У меня все, спасибо что дочитали до конца. Эта тру-стори конечно больше подходит для какого-то башорга, но что было то было. Теперь осталось нормально отреагировать на то, когда нам его представят.
Аватара пользователя
Андрей Раков
Офтоп: я ф шоке :shock: тяжело себе такое даже представить...
Аватара пользователя
Алексей Пикуров
Здравствуйте.

Nice story :), однако хочу обратить ваше внимание, на то, что:
1. Версия MyChat у вас весьма старая. Надо бы обновиться. Прошло больше года и вышло уже 4 версии и несколько апдейтов. Исправлена гора ошибок, добавлены новые :) Ну и новых возможностей и улучшений, конечно, порядочно есть.
MyChat 4.15 — интеграция мессенджера с корпоративными приложениями и поддержка IPv6
Новая версия MyChat 4.16 — замена NET SEND
WEB-чат и офисный мессенджер – два в одном. MyChat 5.0
MyChat 5.1 — видеочат и аудиозвонки в WEB-чате

2. Чудес не бывает, вероятно, произошло какое-то переполнение памяти или просто сервер завис, обрабатывая какую-то операцию. Вполне возможно, что и наша ошибка, но ник тут явно не при чём. Помнится, был баг с обновлением общего списка контактов, когда сервер MyChat подвисал. Но чтобы так глобально гипервизор сломался - это какое-то нехорошее совпадение.

3. BSOD на клиенте - маловероятно, что клиент чата виноват, однако можно глянуть логи самой OS, что конкретно вызвало синий экран.

4. Могу порекомендовать отремонтировать BD MyChat сервера, как минимум. Консольная команда Repair ServDB.
Аватара пользователя
Андрей Раков
Наш публичный сервер крутится на хипер-в с 2010 года, всякое с ним случалось, но такое...

Обновить сервер и клиентов до 5.1 не хотите?

http://www.nsoft-s.com/downloadmychat.html
Spectre A.V.
Да надо бы, но пока особо нет времени, прошлый апдейт довольно тяжело прошел, пару дней поколбасило, такой вопрос, старые клиенты смогут подключаться к новому серверу? И не нужна ли новая лицензия?

Просто функционала пока хватает с головой, ошибок тоже особо нету. Я обязательно поиграюсь в тестовой среде, изолированной ото всего, просто вызывало ошибки одно и то же действие (логин юзера), вот именно это и непонятно
Аватара пользователя
Алексей Пикуров
Сервер версии 5.1 - клиенты 5.0 или 5.1. Обновиться придётся. Но автообновление ведь есть, в AD или без него. Лицензия нужна, но не новая, а просто подписка, на год или более. http://www.nsoft-s.com/buymychat.html Раздел "Подписка на обновления MyChat". В любом случае, вам решать, обновляться или нет, это дело добровольное.
Аватара пользователя
Андрей Раков
Обязательно выполните на сервере команду "Repair ServDB"
Аватара пользователя
Алексей Пикуров
Вопрос решился?
Аватара пользователя
Алексей Пикуров
Вопрос закрываем.