Назад | Перейти на главную страницу

Отчеты кластера MongoDB, ошибки gotShardHost

Мы запускаем кластер MongoDB на EC2 и снова и снова сталкиваемся со следующей ошибкой в ​​наших файлах журнала:

 Assertion: 10429:setShardVersion failed! { "errmsg" : "exception: gotShardHost different than what i had before  before

а затем информация обо всех существующих шардах и хостах. Эта проблема возникла после того, как мы попытались подключиться к кластеру с одной из наших промежуточных машин, используя более новую версию клиента MongoDB (1.8.2), в то время как наш существующий сервер и другие клиенты используют версию 1.6.5. Назовите меня сумасшедшим, но я думаю, что MongoDB сможет оправиться от того, что кажется очень простой ошибкой, вместо того, чтобы так гадить на кровати. Мы используем драйверы PHP через Doctrine2.

При поиске в Интернете я вижу единственный совет: «Убедитесь, что вы используете одну и ту же версию сервера и клиента», и мы действительно делаем это. Мы пытались исправить это в течение 12 часов, и ничего из того, что мы сделали, не имеет значения. Некоторые люди обеспокоены тем, что части наших веб-приложений не работают из-за того, что Mongo не отвечает, не выдав эту ошибку. ;))

Мы будем очень благодарны за любые предложения о том, как оправиться от этого.

Единственное, что я могу найти, это эта тема на Группа пользователей MongoDB в Google (и бесстыдные соскобления с них.)

Похоже, тебе стоит

  1. Убедитесь, что все клиенты и серверы на самом деле работает та же версия.
  2. Перезапустите mongod на сегменте (ах), на котором возникла эта ошибка.

Если это не сработает, возможно, стоит отправить сообщение в группу самостоятельно для получения помощи или связаться с 10gen.