# File lib/mongo/cluster/sdam_flow.rb, line 453 def check_if_has_primary unless topology.replica_set? raise ArgumentError, 'check_if_has_primary should only be called when topology is replica set' end primary = servers_list.detect do |server| # A primary with the wrong set name is not a primary server.primary? && server.description.replica_set_name == topology.replica_set_name end unless primary @topology = Topology::ReplicaSetNoPrimary.new( topology.options, topology.monitoring, self) end end