Make AsyncRequestToken arguments const, reserve size in response vectors
This commit is contained in:
parent
b3605c9ab1
commit
04124a1e9b
@ -135,7 +135,7 @@ class RsmClient {
|
||||
return AsyncRequestToken{token};
|
||||
}
|
||||
|
||||
void ResendAsyncReadRequest(AsyncRequestToken &token) {
|
||||
void ResendAsyncReadRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_reads_.at(token.GetId());
|
||||
|
||||
ReadRequest<ReadRequestT> read_req = {.operation = async_request.request};
|
||||
@ -144,7 +144,7 @@ class RsmClient {
|
||||
io_.template Request<ReadRequest<ReadRequestT>, ReadResponse<ReadResponseT>>(leader_, read_req);
|
||||
}
|
||||
|
||||
std::optional<BasicResult<TimedOut, ReadResponseT>> PollAsyncReadRequest(AsyncRequestToken &token) {
|
||||
std::optional<BasicResult<TimedOut, ReadResponseT>> PollAsyncReadRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_reads_.at(token.GetId());
|
||||
|
||||
if (!async_request.future.IsReady()) {
|
||||
@ -154,7 +154,7 @@ class RsmClient {
|
||||
return AwaitAsyncReadRequest();
|
||||
}
|
||||
|
||||
std::optional<BasicResult<TimedOut, ReadResponseT>> AwaitAsyncReadRequest(AsyncRequestToken &token) {
|
||||
std::optional<BasicResult<TimedOut, ReadResponseT>> AwaitAsyncReadRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_reads_.at(token.GetId());
|
||||
ResponseResult<ReadResponse<ReadResponseT>> get_response_result = std::move(async_request.future).Wait();
|
||||
|
||||
@ -206,7 +206,7 @@ class RsmClient {
|
||||
return AsyncRequestToken{token};
|
||||
}
|
||||
|
||||
void ResendAsyncWriteRequest(AsyncRequestToken &token) {
|
||||
void ResendAsyncWriteRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_writes_.at(token.GetId());
|
||||
|
||||
WriteRequest<WriteRequestT> write_req = {.operation = async_request.request};
|
||||
@ -215,7 +215,7 @@ class RsmClient {
|
||||
io_.template Request<WriteRequest<WriteRequestT>, WriteResponse<WriteResponseT>>(leader_, write_req);
|
||||
}
|
||||
|
||||
std::optional<BasicResult<TimedOut, WriteResponseT>> PollAsyncWriteRequest(AsyncRequestToken &token) {
|
||||
std::optional<BasicResult<TimedOut, WriteResponseT>> PollAsyncWriteRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_writes_.at(token.GetId());
|
||||
|
||||
if (!async_request.future.IsReady()) {
|
||||
@ -225,7 +225,7 @@ class RsmClient {
|
||||
return AwaitAsyncWriteRequest();
|
||||
}
|
||||
|
||||
std::optional<BasicResult<TimedOut, WriteResponseT>> AwaitAsyncWriteRequest(AsyncRequestToken &token) {
|
||||
std::optional<BasicResult<TimedOut, WriteResponseT>> AwaitAsyncWriteRequest(const AsyncRequestToken &token) {
|
||||
auto &async_request = async_writes_.at(token.GetId());
|
||||
ResponseResult<WriteResponse<WriteResponseT>> get_response_result = std::move(async_request.future).Wait();
|
||||
|
||||
|
@ -254,12 +254,14 @@ class RequestRouter : public RequestRouterInterface {
|
||||
|
||||
// drive requests to completion
|
||||
std::vector<msgs::ScanVerticesResponse> responses;
|
||||
responses.reserve(state.requests.size());
|
||||
do {
|
||||
DriveReadResponses(state, responses);
|
||||
} while (!state.requests.empty());
|
||||
|
||||
// convert responses into VertexAccessor objects to return
|
||||
std::vector<VertexAccessor> accessors;
|
||||
accessors.reserve(responses.size());
|
||||
for (auto &response : responses) {
|
||||
for (auto &result_row : response.results) {
|
||||
accessors.emplace_back(VertexAccessor(std::move(result_row.vertex), std::move(result_row.props), this));
|
||||
@ -292,6 +294,7 @@ class RequestRouter : public RequestRouterInterface {
|
||||
|
||||
// drive requests to completion
|
||||
std::vector<msgs::CreateVerticesResponse> responses;
|
||||
responses.reserve(state.requests.size());
|
||||
do {
|
||||
DriveWriteResponses(state, responses);
|
||||
} while (!state.requests.empty());
|
||||
@ -315,6 +318,7 @@ class RequestRouter : public RequestRouterInterface {
|
||||
|
||||
// drive requests to completion
|
||||
std::vector<msgs::CreateExpandResponse> responses;
|
||||
responses.reserve(state.requests.size());
|
||||
do {
|
||||
DriveWriteResponses(state, responses);
|
||||
} while (!state.requests.empty());
|
||||
@ -342,6 +346,7 @@ class RequestRouter : public RequestRouterInterface {
|
||||
|
||||
// drive requests to completion
|
||||
std::vector<msgs::ExpandOneResponse> responses;
|
||||
responses.reserve(state.requests.size());
|
||||
do {
|
||||
DriveReadResponses(state, responses);
|
||||
} while (!state.requests.empty());
|
||||
|
@ -192,8 +192,6 @@ void ExecuteOp(query::v2::RequestRouter<LocalTransport> &request_router, std::se
|
||||
|
||||
void ExecuteOp(query::v2::RequestRouter<LocalTransport> &request_router, std::set<CompoundKey> &correctness_model,
|
||||
ScanAll scan_all) {
|
||||
query::v2::ExecutionState<msgs::ScanVerticesRequest> request{.label = "test_label"};
|
||||
|
||||
auto results = request_router.ScanVertices("test_label");
|
||||
|
||||
MG_ASSERT(results.size() == correctness_model.size());
|
||||
|
Loading…
Reference in New Issue
Block a user