Portability | portable |
---|---|
Stability | experimental |
Maintainer | Bryan O'Sullivan <bos@mailrank.com> |
Basic types.
- type ClientID = ByteString
- data Client = Client {}
- data Connection
- data RiakException
- type Bucket = ByteString
- type Key = ByteString
- type Tag = ByteString
- newtype VClock = VClock {}
- data Job
- data Quorum
- type RW = Quorum
- type R = Quorum
- type W = Quorum
- type DW = Quorum
- class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Request msg
- class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Response msg
- class (Request req, Response resp) => Exchange req resp | req -> resp, resp -> req
- data MessageTag
- = ErrorResponse
- | PingRequest
- | PingResponse
- | GetClientIDRequest
- | GetClientIDResponse
- | SetClientIDRequest
- | SetClientIDResponse
- | GetServerInfoRequest
- | GetServerInfoResponse
- | GetRequest
- | GetResponse
- | PutRequest
- | PutResponse
- | DeleteRequest
- | DeleteResponse
- | ListBucketsRequest
- | ListBucketsResponse
- | ListKeysRequest
- | ListKeysResponse
- | GetBucketRequest
- | GetBucketResponse
- | SetBucketRequest
- | SetBucketResponse
- | MapReduceRequest
- | MapReduceResponse
- class Tagged msg where
- messageTag :: msg -> MessageTag
Client management
type ClientID = ByteStringSource
A client identifier. This is used by the Riak cluster when logging vector clock changes, and should be unique for each client.
Connection management
Errors
data RiakException Source
The main Riak exception type.
Data types
type Bucket = ByteStringSource
A Bucket is a container and keyspace for data stored in Riak, with a set of common properties for its contents (the number of replicas, for instance).
type Key = ByteStringSource
Keys are unique object identifiers in Riak and are scoped within buckets.
type Tag = ByteStringSource
An application-specific identifier for a link. See http://wiki.basho.com/Links.html for details.
A wrapper that keeps Riak vector clocks opaque.
VClock | |
|
A specification of a MapReduce job. http://wiki.basho.com/MapReduce.html.
Quorum management
A read/write quorum. The quantity of replicas that must respond
to a read or write request before it is considered successful. This
is defined as a bucket property or as one of the relevant
parameters to a single request (R
,W
,DW
,RW
).
Read/write quorum. How many replicas need to collaborate when deleting a value.
Write quorum. How many replicas to write to before returning a successful response.
Durable write quorum. How many replicas to commit to durable storage before returning a successful response.
Message identification
class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Request msg Source
A message representing a request from client to server.
class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Response msg Source
A message representing a response from server to client.
data MessageTag Source
An identifier for an inbound or outbound message.
Messages are tagged.
:: msg | |
-> MessageTag | Retrieve a message's tag. |