Copyright | (c) David Terei, 2016 |
---|---|
License | BSD |
Maintainer | code@davidterei.com |
Stability | stable |
Portability | GHC |
Safe Haskell | Safe |
Language | Haskell2010 |
Memcached related errors and exception handling.
- data MemcacheError
- data Status
- data ClientError
- data ProtocolError
- = UnknownPkt { }
- | UnknownOp { }
- | UnknownStatus { }
- | BadLength { }
- | WrongOp { }
- | UnexpectedEOF { }
- throwStatus :: Status -> IO a
- wrongOp :: Response -> String -> MemcacheError
Error types
data MemcacheError Source
All exceptions that a Memcached client may throw.
OpError Status | Memcached operation error. |
ClientError ClientError | Error occuring on client side. |
ProtocolError ProtocolError | Errors occurring communicating with Memcached server. |
The status (success or error) of a Memcached operation returned in a
Response
.
NoError | Operation successful. |
ErrKeyNotFound | Key not found. |
ErrKeyExists | Key exists when not expected. |
ErrValueTooLarge | Value too large to store at server. |
ErrInvalidArgs | Invalid arguments for operation. |
ErrItemNotStored | Key-Value pair not stored at server (internal error). |
ErrValueNonNumeric | Value not numeric when increment or decrement requested. |
ErrUnknownCommand | Server doesn't know requested command. |
ErrOutOfMemory | Server out of memory. |
SaslAuthFail | SASL authentication failed. |
SaslAuthContinue | SASL authentication requires more steps. |
data ClientError Source
Errors that occur on the client.
NoServersReady | All servers are currently marked failed. |
Timeout | Timeout occurred sending request to server. |
data ProtocolError Source
Errors related to Memcached protocol and bytes on the wire.
UnknownPkt | Received an unknown response packet. |
UnknownOp | Unknown Memcached operation. |
UnknownStatus | Unknown Memcached status field value. |
BadLength | Unexpected length of a Memcached field (extras, key, or value). |
WrongOp | Response packet is for a different operation than expected. |
UnexpectedEOF | Network socket closed without receiving enough bytes. |
Error creation
throwStatus :: Status -> IO a Source
Convert a status to MemcacheError
exception.