[][src]Trait async_raft::AppDataResponse

pub trait AppDataResponse: Clone + Debug + Send + Sync + Serialize + DeserializeOwned + 'static { }

A trait defining application specific response data.

The intention of this trait is that applications which are using this crate will be able to use their own concrete data types for returning response data from the storage layer when an entry is applied to the state machine as part of a client request (this is not used during replication). This allows applications to seamlessly return application specific data from their storage layer, up through Raft, and back into their application for returning data to clients.

This type must encapsulate both success and error responses, as application specific logic related to the success or failure of a client request — application specific validation logic, enforcing of data constraints, and anything of that nature — are expressly out of the realm of the Raft consensus protocol.

Implementors

Loading content...