module Mongo::Operation::ExecutableTransactionLabel

Shared behavior of applying transaction error label to execution result.

@note This module should be included after ExecutableNoValidate,

if both are included in a class.

@api private

Public Instance Methods

execute(server) click to toggle source
Calls superclass method
# File lib/mongo/operation/shared/executable_transaction_label.rb, line 26
def execute(server)
  super
rescue Mongo::Error::SocketError => e
  if session && session.in_transaction?
    e.send(:add_label, Mongo::Error::TRANSIENT_TRANSACTION_ERROR_LABEL)
  end
  raise e
end