Módulo: Mongo::Error::SdamErrorDetection

Incluido en:
OperationFailure::Familia, Analizador
Definido en:
lib/mongo/error/sdam_error_detection.rb

Overview

Nota:

Aunque los métodos not_master? y node_recovering? de este módulo son parte de la API pública, el hecho de que estos métodos estén definidos en este módulo y no en las clases que incluyen este módulo no es parte de la API pública.

Desde:

  • 2.0.0

Colapso delresumen constante

NO_CÓDIGOS_MAESTROS =

Esta constante forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Desde:

  • 2.0.0

[10107, 13435].freeze
NODE_RECOVERING_CODES =

Esta constante forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Desde:

  • 2.0.0

[11600, 11602, 13436, 189, 91, 10058].freeze
NODE_SHUTTING_DOWN_CODES =

Esta constante forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Desde:

  • 2.0.0

[11600, 91].freeze

Colapso del resumen del método de instancia

Detalles del método de instancia

#nodo_recuperándose?verdadero | falso

Devuelve:

  • (verdadero | falso)

    Si el error es que un nodo se está recuperando.

Desde:

  • 2.8.0



53
54
55
56
57
58
59
60
61
62
63
64
65
# Archivo 'lib/mongo/error/sdam_error_detection.rb', línea 53

def ¿nodo_recuperándose?
  # Requerir que el error se comunique en el nivel superior de la respuesta
  # para que influya en el estado de SDAM. Consulte DRIVERS-1376 / RUBY-2516.
  return false Si Documento && Documento['ok'] == 1

  Si Código
    NODE_RECOVERING_CODES.¿incluir?(Código)
  elsif Mensaje
    Mensaje.¿incluir?('Elnodo se está recuperando') || Mensaje.¿incluir?('no es master ni secundario')
  else
    false
  end
end

#¿nodo_apagado?verdadero | falso

Devuelve:

  • (verdadero | falso)

    Si el error es que un nodo se está apagando.

Desde:

  • 2.9.0



74
75
76
77
78
79
80
# Archivo 'lib/mongo/error/sdam_error_detection.rb', línea 74

def ¿Nodo_apagándose?
  Si Código && NODE_SHUTTING_DOWN_CODES.¿incluir?(Código)
    true
  else
    false
  end
end

#no_maestro?verdadero | falso

Devuelve:

  • (verdadero | falso)

    Si el error es de un no maestro.

Desde:

  • 2.8.0



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# Archivo 'lib/mongo/error/sdam_error_detection.rb', línea 30

def ¿no_maestro?
  # Requerir que el error se comunique en el nivel superior de la respuesta
  # para que influya en el estado de SDAM. Consulte DRIVERS-1376 / RUBY-2516.
  return false Si Documento && Documento['ok'] == 1

  Si ¿nodo_recuperándose?
    false
  elsif Código
    NO_CÓDIGOS_MAESTROS.¿incluir?(Código)
  elsif Mensaje
    Mensaje.¿incluir?('noamo')
  else
    false
  end
end