Class Mongo::ServerSelector::SecondaryPreferred
In: lib/mongo/server_selector/secondary_preferred.rb
Parent: Object

Encapsulates specifications for selecting servers, with

  secondaries preferred, given a list of candidates.

@since 2.0.0

Methods

Included Modules

Selectable

Constants

SERVER_FORMATTED_NAME = 'secondaryPreferred'.freeze   Name of the this read preference in the server‘s format.

@since 2.5.0

Public Instance methods

Get the name of the server mode type.

@example Get the name of the server mode for this preference.

  preference.name

@return [ Symbol ] :secondary_preferred

@since 2.0.0

Whether the slaveOk bit should be set on wire protocol messages.

  I.e. whether the operation can be performed on a secondary server.

@return [ true ] true

@since 2.0.0

Whether tag sets are allowed to be defined for this server preference.

@return [ true ] true

@since 2.0.0

Convert this server preference definition into a format appropriate

  for a server.

@example Convert this server preference definition into a format

  for a server.
  preference = Mongo::ServerSelector::SecondaryPreferred.new
  preference.to_doc

@return [ Hash ] The server preference formatted for a server.

@since 2.5.0

Convert this server preference definition into a format appropriate

  for a mongos server.

Note that the server preference is not sent to mongos as part of the query

  selector if there are no tag sets, for maximum backwards compatibility.

@example Convert this server preference definition into a format

  for mongos.
  preference = Mongo::ServerSelector::SecondaryPreferred.new
  preference.to_mongos

@return [ Hash ] The server preference formatted for a mongos server.

@since 2.0.0

[Validate]