Google Cloud Platform gRPC retry library.
[dependencies]
google-cloud-gax = 0.2.0
```rust use googlecloudgax::invoke::invoke_reuse;
pub async fn createsession(
&mut self,
req: CreateSessionRequest,
opt: Option
// retry gRPC call
return invoke_reuse(
|spanner_client| async {
let request = create_request(format!("database={}", database), &token, req.clone());
spanner_client
.create_session(request)
.await
.map_err(|e| (e, spanner_client))
},
&mut self.spanner_client,
&mut retry_setting,
)
.await;
}) ```