Только что заметил, что в некоторых интенсивных дискуссиях некоторые комменты на джаббер приходят, а в базе их нет. То есть, на этот коммент не ответить, и через веб-интерфейс он не виден. Что это за хуйня, как бороться?
@stiletto Ну вот в недавнем анархосраче как минимум коммент #IMVU36/CAU пропал. Ещё в соседнем треде что-то пропало. А что, нельзя так сделать, чтобы сервер проверял, остался ли коммент в базе, прежде чем отправлять его подписчикам?
@goren Это должна сделать mongodb ибо все инсерты комментариев и сообщений делаются с safe. Но она умудряется как-то проебать. Запрос к бд завершается успешно, а запись проебывается.
@stiletto Ну напиши разработчикам mongodb, что такая хуйня. Это же серьёзная проблема для базы, если она не может гарантировать сохранность транзакции. Alternatively, можно накостылить костыль, который будет ещё раз проверять, что сообщение в самом деле точно-точно сохранилось в базе, прежде чем его отправлять и удолять из очереди.
@stiletto А у тебя в логах коды отправленых комментов оседают? Может быть, набыдлокодишь скрипт, который будет сравнивать коды коментов в логах и в базе:
@goren Я только что заставил бнвач писать в логи весь объект комментария и объект сообщения одновременно с сохранением его в базу. Через некоторое время пройдусь скриптом, который проверит наличие в базе и покажет собственно зафейлившиеся объекты.
@stiletto Ну заебись тогда. Теперь осталось набросить что-нибудь злободневное и запилить срачь на 50+ комментов (почему-то чаще всего пропадает именно в больших тредах).