Module: WaterDrop::Errors
- Defined in:
- lib/waterdrop/errors.rb
Overview
Namespace used to encapsulate all the internal errors of WaterDrop
Defined Under Namespace
Classes: ProduceManyError
Constant Summary collapse
- BaseError =
Base class for all the WaterDrop internal errors
Class.new(StandardError)
- ConfigurationInvalidError =
Raised when configuration doesn’t match with validation contract
Class.new(BaseError)
- VariantInvalidError =
Raised when variant alteration is not valid
Class.new(BaseError)
- ProducerNotConfiguredError =
Raised when we want to use a producer that was not configured
Class.new(BaseError)
- ProducerAlreadyConfiguredError =
Raised when we want to reconfigure a producer that was already configured
Class.new(BaseError)
- ProducerUsedInParentProcess =
Raised when trying to use connected producer from a forked child process Producers cannot be used in forks if they were already used in the child processes
Class.new(BaseError)
- ProducerClosedError =
Raised when there was an attempt to use a closed producer
Class.new(BaseError)
- MessageInvalidError =
Raised when we want to send a message that is invalid (impossible topic, etc)
Class.new(BaseError)
- TransactionalOffsetInvalidError =
Raised when we want to commit transactional offset and the input is invalid
Class.new(BaseError)
- StatusInvalidError =
Raised when we’ve got an unexpected status. This should never happen. If it does, please contact us as it is an error.
Class.new(BaseError)
- ProduceError =
Raised when there is an inline error during single message produce operations
Class.new(BaseError)
- TransactionRequiredError =
Raised when we attempt to perform operation that is only allowed inside of a transaction and there is no transaction around us
Class.new(BaseError)
- AbortTransaction =
Raise it within a transaction to abort it It does not have an
Error
postfix because technically it is not an error as it is used for graceful transaction aborting Class.new(BaseError)
- EarlyTransactionExitNotAllowedError =
Do not use
break
,return
orthrow
inside of the transaction blocks Class.new(BaseError)