class Mongo::Error::OperationFailure

Raised when an operation fails for some reason.

@since 2.0.0

Constants

RETRY_MESSAGES

These are magic error messages that could indicate a cluster reconfiguration behind a mongos. We cannot check error codes as they change between versions, for example 15988 which has 2 completely different meanings between 2.4 and 3.0.

@since 2.1.1

WRITE_RETRY_MESSAGES

These are magic error messages that could indicate a master change.

@since 2.4.2

Public Instance Methods

retryable?() click to toggle source

Can the read operation that caused the error be retried?

@example Is the error retryable?

error.retryable?

@return [ true, false ] If the error is retryable.

@since 2.1.1

# File lib/mongo/error/operation_failure.rb, line 60
def retryable?
  RETRY_MESSAGES.any?{ |m| message.include?(m) }
end
write_retryable?() click to toggle source

Can the write operation that caused the error be retried?

@example Is the error retryable for writes?

error.write_retryable?

@return [ true, false ] If the error is retryable.

@since 2.4.2

# File lib/mongo/error/operation_failure.rb, line 72
def write_retryable?
  WRITE_RETRY_MESSAGES.any? { |m| message.include?(m) }
end