类:Mongo::Cluster::Topology::ReplicaSetNoPrimary

继承:
Base
  • 对象
显示全部
定义于:
build/Ruby-driver-v 2.19 /lib/mongo/cluster/topology/replica_set_no_primary.rb

Overview

定义当集群处于副本集拓扑结构且没有主节点或驱动程序尚未发现主节点时的行为。

由于:

  • 2.0.0

直接已知子类

ReplicaSetWithPrimary

常量摘要折叠

NAME =
已弃用。

拓扑的显示名称。

由于:

  • 2.0.0

' Replica Set '.冻结

Loggable中包含的常量

Loggable::PREFIX

实例属性摘要

Base继承的属性

#compatibility_error#logic_session_timeout#monitoring#options#server_descriptions

包含在Monitoring::Publishable 中的属性

#monitoring

实例方法摘要折叠

Base继承的方法

#addresses#兼容? , #data_ Bearing_servers?#initialize#max_election_id#max_set_version#new_max_election_id#new_max_set_version#replica_set_name

Monitoring::Publishable 中包含的方法

#publish_cmap_event#publish_event#publish_sdam_event

Loggable中包含的方法

#log_debug#log_error#log_ Fatal#log_info#log_warn#logger

构造函数详情

该类从Mongo::Cluster::Topology::Base继承了一个构造函数

实例方法详细信息

#display_namestring

获取显示名称。

例子:

获取显示名称。

ReplicaSet.display_name

返回:

  • ( string )

    显示名称。

由于:

  • 2.0.0



43
44
45
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第43行

def 显示名称
  self.class.名称.gsub(/ .*:: /, ' ')
end

# has_read_server? (cluster, server_selector = nil) ⇒ true , false

已弃用。

确定拓扑是否会为提供的候选和读取偏好选择可读服务器。

例子:

是否存在可读服务器?

topology.has_readable_server?(cluster, server_selector)

参数:

  • 集群 (集群)

    集群。

  • server_selector ( ServerSelector ) (默认为: nil

    服务器选择器。

返回:

  • ( true , false )

    如果存在可读服务器。

由于:

  • 2.4.0



80
81
82
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第80行

def has_read_server?(集群, server_selector = nil)
  !(server_selector || ServerSelector.主节点).try_select_server(集群).nil?
end

# has_writable_server? (cluster) ⇒ true , false

确定拓扑结构是否会为提供的候选服务器选择可写服务器。

例子:

是否存在可写服务器?

topology.has_writable_server?(servers)

参数:

  • 集群 (集群)

    集群。

返回:

  • ( true , false )

    如果存在可写服务器。

由于:

  • 2.4.0



95
96
97
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第95行

def has_writable_server?(集群)
  !ServerSelector.主节点.try_select_server(集群).nil?
end

# replica_set?true

副本集拓扑结构是一个副本集。

例子:

此拓扑是副本集吗?

topology.replica_set?

返回:

  • ( true )

    始终为 true。

由于:

  • 2.0.0



107
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第107行

def replica_set? true end

#servers ( servers ) ⇒数组 < MongoDB Server >

为此拓扑结构选择适当的服务器。

例子:

选择服务器。

ReplicaSet.servers(servers)

参数:

返回:

由于:

  • 2.0.0



119
120
121
122
123
124
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第119行

def 服务器(服务器)
  服务器.SELECT do |server|
    (replica_set_name.nil? || server.replica_set_name == replica_set_name) &&
      server.主节点? || server.从节点(secondary node from replica set)?
  end
end

# sharded?false

副本集拓扑结构未进行分片。

例子:

拓扑结构是否分片?

ReplicaSet.sharded?

返回:

  • ( false )

    始终为 false。

由于:

  • 2.0.0



134
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第134行

def 分片的? false end

# single?false

副本集拓扑不是单一的。

例子:

拓扑结构是否单一?

ReplicaSet.single?

返回:

  • ( false )

    始终为 false。

由于:

  • 2.0.0



144
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第144行

def 单身? false end

#摘要对象

注意:

此方法是实验性的,可能会发生变化。

由于:

  • 2.7.0



51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第51行

def 总结
  详情 = server_descriptions.密钥.连接 (JOIN)(' , ')
  if 详情 != ' '
    详情 << ' , '
  end
  详情 << " name= #{ replica_set_name } "
  if max_set_version
    详情 << " ,v= #{ max_set_version } "
  end
  if max_election_id
    详情 << " ,e= #{ max_election_id && max_election_id . to_s . sub ( / ^ 0 + / , ' ' ) } "
  end
  " #{ display_name } [ #{ details } ] "
end

#未知?false

副本集拓扑结构并非未知。

例子:

拓扑结构未知?

ReplicaSet.unknown?

返回:

  • ( false )

    始终为 false。

由于:

  • 2.0.0



154
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 集群/ 拓扑结构/replica_set_no_primary.rb', 第154行

def 未知? false end