Struct pd_client::util::Client [−][src]
A leader client doing requests asynchronous.
Fields
timer: Handle
inner: RwLock<Inner>
feature_gate: FeatureGate
enable_forwarding: bool
Implementations
impl Client
[src][−]
pub(crate) fn new(
env: Arc<Environment>,
security_mgr: Arc<SecurityManager>,
client_stub: PdClientStub,
members: GetMembersResponse,
target: TargetInfo,
enable_forwarding: bool
) -> Client
[src]
env: Arc<Environment>,
security_mgr: Arc<SecurityManager>,
client_stub: PdClientStub,
members: GetMembersResponse,
target: TargetInfo,
enable_forwarding: bool
) -> Client
pub fn update_client(
&self,
client_stub: PdClientStub,
target: TargetInfo,
members: GetMembersResponse
)
[src]
&self,
client_stub: PdClientStub,
target: TargetInfo,
members: GetMembersResponse
)
pub fn handle_region_heartbeat_response<F>(
self: &Arc<Self>,
f: F
) -> PdFuture<()> where
F: Fn(RegionHeartbeatResponse) + Send + 'static,
[src]
self: &Arc<Self>,
f: F
) -> PdFuture<()> where
F: Fn(RegionHeartbeatResponse) + Send + 'static,
pub fn on_reconnect(&self, f: Box<dyn Fn() + Sync + Send + 'static>)
[src]
pub fn request<Req, Resp, F>(
self: &Arc<Self>,
req: Req,
func: F,
retry: usize
) -> Request<Req, F> where
Req: Clone + 'static,
F: FnMut(&Client, Req) -> PdFuture<Resp> + Send + 'static,
[src]
self: &Arc<Self>,
req: Req,
func: F,
retry: usize
) -> Request<Req, F> where
Req: Clone + 'static,
F: FnMut(&Client, Req) -> PdFuture<Resp> + Send + 'static,
pub fn get_leader(&self) -> Member
[src]
pub async fn reconnect(&self, force: bool) -> Result<()>
[src][−]
Re-establishes connection with PD leader in asynchronized fashion.
If force
is false, it will reconnect only when members change.
Note: Retrying too quickly will return an error due to cancellation. Please always try to reconnect after sending the request first.
Auto Trait Implementations
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Pointable for T
[src][+]
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,