Члены набора реплик MongoDB без права голоса могут стать основными?

Я пытаюсь установить на 0 количество голосов члена набора реплик через оболочку mongo, подключенную к основному, но я получаю сообщение об ошибке, когда я звоню:

rstest:PRIMARY> rs.reconfig(conf)
{
  "ok" : 0,
  "errmsg" : "priority must be 0 when non-voting (votes:0)",
  "code" : 103
}

Что я делаю:

rstest:PRIMARY> conf = rs.conf()
   ...     //the conf document
rstest:PRIMARY> conf.members[0].votes = 0 
rstest:PRIMARY> rs.reconfig(conf)

Где conf.members[0] — это документ conf SECONDARY

На этом ссылка в документации MongoDB говорится:

...

cfg = rs.conf()
cfg.members[3].votes = 0
cfg.members[4].votes = 0
cfg.members[5].votes = 0
rs.reconfig(cfg)

Эта последовательность дает 0 голосов четвертому, пятому и шестому членам набора в соответствии с порядком массива участников в выводе rs.conf(). Этот параметр позволяет набору избирать этих членов в качестве основных, но не позволяет им голосовать на выборах.

...

Но в возвращенном сообщении об ошибке говорится, что я должен установить приоритет = 0 для без права голоса, но это означает, что этот член не может быть основным.

Что я не понял или где я не так делаю?

Большое спасибо


person lallacat    schedule 14.11.2016    source источник
comment
Добро пожаловать в СО. ваш вопрос может лучше подойти на dba.stackexchange.com, но обязательно посетите их Справочный центр, чтобы вы знали, о чем сайт.   -  person styvane    schedule 14.11.2016
comment
можете ли вы опубликовать свой файл конфигурации или хотя бы раздел конфигурации для участников 4 и 5   -  person satish chennupati    schedule 14.11.2016


Ответы (1)


Ваша проблема в том, что текущие версии MongoDB не позволяют 0 голосов на узлах, какой приоритет > 0. Со «старыми» версиями MongoDB вы могли бы сделать это.. Если я правильно помню, 2.6 была последней версией, в которой вы могли это сделать...

person JJussi    schedule 16.11.2016