Classe: Mongo::Cluster::Topology::ReplicaSetNoPrimary

Herda:
Base
  • Objeto
mostrar tudo
Definido em:
build/ruby-driver-v2.19/lib/mongo/cluster/topology/replica_set_no_primary.rb

Visão geral

Define o comportamento quando um cluster está em topologia de conjunto de réplicas e não há nenhum primary ou o primary ainda não foi descoberto pelo driver.

Desde:

  • 2.0.0

Subclasses conhecidas diretas

ReplicaSetWithPrimary

Colapsode resumo constante

NOME =
Obsoleto.

O nome de exibição da topologia.

Desde:

  • 2.0.0

'Conjunto de réplicas'.congelar

Constantes incluídas do Loggable

Loggable::Prefix

Resumo do atributo de instância

Atributos herdados da Base

#compatibility_error, #logical_session_timeout, #monitoring, #options, #server_descriptions

Atributos incluídos no Monitoramento::publicável

#monitoring

Recolhimento do Resumo do método de instância

Métodos herdados do Base

#addresses, #compatible?, #data_Bearing_Servers?, #initialize, #max_election_id, #max_set_version, #new_max_election_id, #new_max_set_version, #replica_set_name

Métodos incluídos do monitoramento::publicável

#publish_cmap_event, #publish_event, #publish_sdam_event

Métodos incluídos no Loggable

#log_debug, #log_error, #log_fatal, #log_info, #log_WARN, #logger

Detalhes do construtor

Esta classe herda um construtor de Mongo::Cluster::Topology::Base

Detalhes do método de instância

#exibição_namestring

Obtenha o nome de exibição.

Exemplos:

Obtenha o nome de exibição.

ReplicaSet.display_name

Retorna:

  • (string)

    O nome de exibição.

Desde:

  • 2.0.0



43
44
45
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 43

def exibição_name
  auto.classe.name.gsub(/.*::/, '')
end

#has_readable_server?(cluster, server_selector = nil) ➤ true, false

Obsoleto.

Determine se a topologia selecionaria um servidor legível para os candidatos fornecidos e preferência de leitura.

Exemplos:

Um servidor legível está presente?

topology.has_readable_server?(cluster, server_selector)

Parâmetros:

  • cluster (Cluster)

    O cluster.

  • server_selector (ServerSelector) (padrão para: nil)

    O seletor de servidor.

Retorna:

  • (verdadeiro, falso)

    Se um servidor legível estiver presente.

Desde:

  • 2.4.0



80
81
82
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 80

def has_readable_server?(cluster, server_selector = nada)
  !(server_selector || ServerSelector.Principal).try_select_server(cluster).nada?
end

#has_writeable_server?(cluster) ➤ true, false

Determine se a topologia selecionaria um servidor gravável para os candidatos fornecidos.

Exemplos:

Um servidor gravável está presente?

topology.has_writable_server?(servers)

Parâmetros:

Retorna:

  • (verdadeiro, falso)

    Se houver um servidor gravável.

Desde:

  • 2.4.0



95
96
97
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 95

def has_writeable_server?(cluster)
  !ServerSelector.Principal.try_select_server(cluster).nada?
end

#replica_set?verdadeiro

Uma topologia de conjunto de réplicas é um conjunto de réplicas.

Exemplos:

A topologia é um conjunto de réplicas?

topology.replica_set?

Retorna:

  • (verdadeiro)

    Sempre verdadeiro.

Desde:

  • 2.0.0



107
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 107

def replica_set?; true; end

#servidores(servidores) ➤ Array<Servidor MongoDB>

Selecione servidores apropriados para esta topologia.

Exemplos:

Selecione os servidores.

ReplicaSet.servers(servers)

Parâmetros:

Retorna:

Desde:

  • 2.0.0



119
120
121
122
123
124
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 119

def Servidores(Servidores)
  Servidores.selecione fazer |Servidor|
    (replica_set_name.nada? || Servidor.replica_set_name == replica_set_name) &&
      Servidor.primário? || Servidor.secundário?
  end
end

#fragmentado?false

Uma topologia de conjunto de réplicas não é fragmentada.

Exemplos:

A topologia é fragmentada?

ReplicaSet.sharded?

Retorna:

  • (falso)

    Sempre falso.

Desde:

  • 2.0.0



134
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 134

def fragmentado?; false; end

#único?false

Uma topologia de conjunto de réplicas não é única.

Exemplos:

A topologia é única?

ReplicaSet.single?

Retorna:

  • (falso)

    Sempre falso.

Desde:

  • 2.0.0



144
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 144

def único?; false; end

#resumoObjeto

Observação:

Este método é experimental e sujeito a alterações.

Desde:

  • 2.7.0



51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 51

def Resumo
  Detalhes = server_descriptions.keys.juntar(',')
  se Detalhes != ''
    Detalhes << ','
  end
  Detalhes << "name=#{replica_set_name}"
  se max_set_version
    Detalhes << ",v=#{max_set_version}"
  end
  se max_election_id
    Detalhes << ",e=#{max_election_id && max_election_id.to_s.sub(/^0+/, '')}"
  end
  "#{exibição_name}[#{detalhes}]"
end

#desconhecido?false

Uma topologia de conjunto de réplicas não é desconhecida.

Exemplos:

A topologia é desconhecida?

ReplicaSet.unknown?

Retorna:

  • (falso)

    Sempre falso.

Desde:

  • 2.0.0



154
# File 'build/ruby-driver-v2.19/lib/mongo/cluster/ topologia/replica_set_no_primary.rb', linha 154

def desconhecido?; false; end