Crate rad [] [src]

A high-level wrapper library for talking to Ceph RADOS clusters.

Only certain features are currently available, mainly writing and reading to RADOS objects, as well as a limited set of other operations (object stats, for example.) However, the operations that are provided are supplied in an idiomatic, Rusty fashion, using the futures library for asynchronous operations.

Missing functionality includes MON/OSD/PGS commands.

Current features: - Read, write, full-write, append - Automatic rados_shutdown on drop of the RadosCluster type - Asynchronous read/write/etc. using futures - Synchronous read and asynchronous write using the RadosObject wrapper, which provides Read, Write, and Seek operations in a manner similar to files

Planned features: - Fully asynchronous read/write using tokio_io::{AsyncRead, AsyncWrite} - Implementations of more futures traits (Stream, Sink)

Reexports

pub use errors::*;
pub use rados::RadosConnectionBuilder;
pub use rados::RadosCluster;
pub use rados::RadosContext;
pub use rados::RadosStat;

Modules

async

Wrappers around rados_completion_t, providing a safe, futures-based API for asynchronous RADOS operations.

errors
rados

Wrappers for Ceph cluster connections, Ceph I/O contexts, and associated operations.

stream

Wrappers implementing Read, Write, and Seek for doing I/O on individual RADOS objects.

Macros

c