Class: Mongo::Operation::CreateIndex::OpMsg Private

Inherits:
Object
  • Object
show all
Includes:
Executable, SessionsSupported, Specifiable
Defined in:
lib/mongo/operation/create_index/op_msg.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

A MongoDB createindex operation sent as an op message.

Since:

  • 2.5.2

Constant Summary

Constants included from Specifiable

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

Instance Attribute Summary

Attributes included from Specifiable

#spec

Instance Method Summary collapse

Methods included from Specifiable

#==, #acknowledged_write?, #array_filters, #bypass_document_validation, #coll_name, #collation, #command, #cursor_count, #cursor_id, #cursor_ids, #db_name, #delete, #deletes, #documents, #index, #index_name, #indexes, #initialize, #max_time_ms, #namespace, #operation_id, #options, #ordered?, #read, #read_concern, #session, #start_transaction, #to_return, #txn_num, #update, #updates, #user, #user_name, #write_concern

Instance Method Details

#execute(server) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Since:

  • 2.5.2



29
30
31
32
33
34
35
36
# File 'lib/mongo/operation/create_index/op_msg.rb', line 29

def execute(server)
  result = Result.new(dispatch_message(server))
  process_result(result, server)
  result.validate!
rescue Mongo::Error::SocketError => e
  e.send(:add_label, Mongo::Error::TRANSIENT_TRANSACTION_ERROR_LABEL) if session.in_transaction?
  raise e
end