1

私のコードは次のようなものです:

Replset = {<<"rs1">>, [{localhost, 27017}, {localhost, 27018}, {localhost, 27019}]},
  Conn_Pool = resource_pool:new (mongo:rs_connect_factory(Replset), 10),
  ...

  Conn = resource_pool:get(Conn_Pool)
  case mongo:do(safe, master, Conn, ?DATABASE,
    fun() ->
     mongo:insert(mytable, {'_id', 26, d, 11})
  end end)
  ...

27017がプライマリ ノードであるため、データを正常に挿入できます。

しかし、すべての mongo rs instances: ではなく、コードにセカンダリ ノードを 1 つだけ配置Replset = {<<"rs1">>, [{localhost, 27019}]}すると、データを挿入することもできます。

例外またはエラーをスローする必要があると思いましたが、データは正常に書き込まれました。

なぜそれが起こったのですか?

4

1 に答える 1