2

У нас есть MongoDB (версия 3.0) как в автономном, так и в кластерном режиме. В настоящее время мы столкнулись с проблемой, которая в основном гласит:

Обнаружено нечистое отключение, следовательно, невозможно запустить mongod.

  1. После отладки мы узнали, что mongod показывал другой pid в (O/p of ps -> ie
ps -eo pid,cmd | grep "/usr/bin/mongod" | grep -v "grep" | awk '{print $1}') and there was different pid in /var/run/mongodb/mongod.pid.
  1. Во втором сценарии команда тестирования выполнила несколько операций перезапуска, в этом случае мы получили ситуацию, когда mongod находился в рабочем состоянии, но файл pid отсутствовал.

Для первого сценария мы просто изменили скрипт инициализации, чтобы проверить, отличается ли запущенный PID от PID, присутствующего в mongod.pid затем просто записали запущенный PID в файл mongod.pid .

Любая помощь, чтобы понять эти сценарии, будет высоко ценится.

1 ответ1

0

Так что есть несколько причин, по которым это может произойти, включая эту ошибку, которая звучит довольно близко к вашей ситуации (и исправлена в более поздней сборке 3.0 в соответствии с заявкой).

Существует также тот факт, что некоторые процессы демонизации требуют, чтобы процесс был запущен с помощью fork = false , чтобы правильно работать и получить правильный PID, подробнее см. SERVER-7254 .

Это две наиболее вероятные причины, возможно, потребуется более конкретная информация (точная версия MongoDB, ОС и т.д.), Чтобы попытаться воспроизвести что-либо еще.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .