123456789_123456789_123456789_123456789_123456789_

Class: Mongo::Operation::DropSearchIndex::OpMsg Private

Do not use. This class is for internal use only.

Overview

A MongoDB createSearchIndexes operation sent as an op message.

Constant Summary

::Mongo::Operation::Specifiable - Included

BYPASS_DOC_VALIDATION, COLLATION, COLL_NAME, CURSOR_COUNT, CURSOR_ID, DB_NAME, DELETE, DELETES, DOCUMENTS, INDEX, INDEXES, INDEX_NAME, MAX_TIME_MS, OPERATION_ID, OPTIONS, READ, READ_CONCERN, SELECTOR, TO_RETURN, UPDATE, UPDATES, USER, USER_NAME, WRITE_CONCERN

::Mongo::Operation::Executable - Included

NETWORK_ERRORS

::Mongo::Operation::SessionsSupported - Included

READ_COMMANDS, ZERO_TIMESTAMP

Instance Attribute Summary

::Mongo::Operation::Executable - Included

::Mongo::Operation::Specifiable - Included

#acknowledged_write?

Does the operation have an acknowledged write concern.

#ordered?

Whether the operation is ordered.

#spec

Instance Method Summary

::Mongo::Operation::OpMsgBase - Inherited

::Mongo::Operation::Timed - Included

#apply_relevant_timeouts_to

If a timeout is active (as defined by the current context), and it has not yet expired, add :maxTimeMS to the spec.

#with_max_time

A helper method that computes the remaining timeout (in seconds) and yields it to the associated block.

::Mongo::Operation::SessionsSupported - Included

#add_read_preference

Adds $readPreference field to the command document.

#add_write_concern!, #apply_autocommit!,
#apply_causal_consistency!

Adds causal consistency document to the selector, if one can be constructed and the selector is for a startTransaction command.

#apply_causal_consistency_if_possible

Adds causal consistency document to the selector, if one can be constructed.

#apply_cluster_time!, #apply_read_pref!, #apply_session_options, #apply_start_transaction!, #apply_txn_num!, #apply_txn_opts!, #build_message, #command, #flags, #read_command?, #suppress_read_write_concern!, #validate_read_preference!

::Mongo::Operation::Executable - Included

::Mongo::Operation::ResponseHandling - Included

#add_error_labels

Adds error labels to exceptions raised in the yielded to block, which should perform MongoDB operations and raise Mongo::Errors on failure.

#add_server_diagnostics

Yields to the block and, if the block raises an exception, adds a note to the exception with the address of the specified server.

#maybe_add_retryable_write_error_label!

A method that will add the RetryableWriteError label to an error if any of the following conditions are true:

#unpin_maybe

Unpins the session and/or the connection if the yielded to block raises errors that are required to unpin the session and the connection.

#validate_result

::Mongo::Operation::Specifiable - Included

#==

Check equality of two specifiable operations.

#apply_collation,
#array_filters

The array filters.

#bypass_document_validation

Whether or not to bypass document level validation.

#coll_name

The name of the collection to which the operation should be sent.

#collation

The collation to apply to the operation.

#command

The command.

#cursor_count

Get the cursor count from the spec.

#cursor_id

The id of the cursor created on the server.

#db_name

The name of the database to which the operation should be sent.

#delete

Get the delete document from the specification.

#deletes

Get the deletes from the specification.

#documents

The documents to in the specification.

#eql?

Alias for Specifiable#==.

#index

Get the index from the specification.

#index_id

Get the index id from the spec.

#index_name

Get the index name from the spec.

#indexes

Get the indexes from the specification.

#initialize

::Mongo::Operation::Create the new specifiable operation.

#max_time_ms

Get the max time ms value from the spec.

#namespace

The namespace, consisting of the db name and collection name.

#operation_id

Get the operation id for the operation.

#options

Get the options for executing the operation on a particular connection.

#read

The read preference for this operation.

#read_concern

Get the read concern document from the spec.

#selector

The selector from the specification for execution on a particular connection.

#session

The session to use for the operation.

#to_return

The number of documents to request from the server.

#txn_num

The transaction number for the operation.

#update

The update document from the spec.

#updates

The update documents from the spec.

#user

The user for user related operations.

#user_name

The user name from the specification.

#write_concern

The write concern to use for this operation.

Instance Method Details

#selector(_connection) ⇒ Hash (private)

Returns the command to send to the database, describing the desired dropSearchIndex operation.

Parameters:

  • _connection (Connection)

    the connection that will receive the command

Returns:

  • (Hash)

    the selector

[ GitHub ]

  
# File 'lib/mongo/operation/drop_search_index/op_msg.rb', line 21

def selector(_connection)
  {
    dropSearchIndex: coll_name,
    :$db => db_name,
  }.tap do |sel|
    sel[:id] = index_id if index_id
    sel[:name] = index_name if index_name
  end
end