You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@quickstep.apache.org by hb...@apache.org on 2016/07/05 15:44:03 UTC
[21/21] incubator-quickstep git commit: AdmitRequest message function
accepts multiple queries.
AdmitRequest message function accepts multiple queries.
Project: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/commit/fb05e6ec
Tree: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/tree/fb05e6ec
Diff: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/diff/fb05e6ec
Branch: refs/heads/scheduler++
Commit: fb05e6ecacdd80412201e048aa53fd26af19475c
Parents: 7074e43
Author: Harshad Deshmukh <hb...@apache.org>
Authored: Tue Jun 28 15:10:51 2016 -0500
Committer: Harshad Deshmukh <hb...@apache.org>
Committed: Tue Jul 5 10:43:11 2016 -0500
----------------------------------------------------------------------
cli/CommandExecutor.cpp | 4 +++-
cli/QuickstepCli.cpp | 4 +++-
query_execution/AdmitRequestMessage.hpp | 5 +++--
query_execution/QueryExecutionUtil.hpp | 4 ++--
query_optimizer/tests/ExecutionGeneratorTestRunner.cpp | 4 +++-
5 files changed, 14 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/fb05e6ec/cli/CommandExecutor.cpp
----------------------------------------------------------------------
diff --git a/cli/CommandExecutor.cpp b/cli/CommandExecutor.cpp
index 7083ef5..440a30f 100644
--- a/cli/CommandExecutor.cpp
+++ b/cli/CommandExecutor.cpp
@@ -216,9 +216,11 @@ inline TypedValue executeQueryForSingleResult(
query_processor->generateQueryHandle(*result.parsed_statement));
DCHECK(query_handle->getQueryPlanMutable() != nullptr);
+ std::vector<QueryHandle*> query_handles;
+ query_handles.push_back(query_handle.get());
// Use foreman to execute the query plan.
QueryExecutionUtil::ConstructAndSendAdmitRequestMessage(
- main_thread_client_id, foreman_client_id, query_handle.get(), bus);
+ main_thread_client_id, foreman_client_id, &query_handles, bus);
QueryExecutionUtil::ReceiveQueryCompletionMessage(main_thread_client_id, bus);
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/fb05e6ec/cli/QuickstepCli.cpp
----------------------------------------------------------------------
diff --git a/cli/QuickstepCli.cpp b/cli/QuickstepCli.cpp
index 02a55a0..c34e389 100644
--- a/cli/QuickstepCli.cpp
+++ b/cli/QuickstepCli.cpp
@@ -433,11 +433,13 @@ int main(int argc, char* argv[]) {
}
DCHECK(query_handle->getQueryPlanMutable() != nullptr);
+ std::vector<QueryHandle*> query_handles;
+ query_handles.push_back(query_handle.get());
start = std::chrono::steady_clock::now();
QueryExecutionUtil::ConstructAndSendAdmitRequestMessage(
main_thread_client_id,
foreman.getBusClientID(),
- query_handle.get(),
+ &query_handles,
&bus);
try {
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/fb05e6ec/query_execution/AdmitRequestMessage.hpp
----------------------------------------------------------------------
diff --git a/query_execution/AdmitRequestMessage.hpp b/query_execution/AdmitRequestMessage.hpp
index e33b354..0aefcbf 100644
--- a/query_execution/AdmitRequestMessage.hpp
+++ b/query_execution/AdmitRequestMessage.hpp
@@ -41,8 +41,9 @@ class AdmitRequestMessage {
* @param query_handles The handles of the queries requesting to be admitted
* to the system.
**/
- explicit AdmitRequestMessage(const std::vector<QueryHandle*> &query_handles)
- : query_handles_(query_handles) {}
+ explicit AdmitRequestMessage(std::vector<QueryHandle*> *query_handles)
+ : query_handles_(*DCHECK_NOTNULL(query_handles)) {
+ }
/**
* @brief Constructor for requesting single query admission.
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/fb05e6ec/query_execution/QueryExecutionUtil.hpp
----------------------------------------------------------------------
diff --git a/query_execution/QueryExecutionUtil.hpp b/query_execution/QueryExecutionUtil.hpp
index 6ea4a29..2b95f1f 100644
--- a/query_execution/QueryExecutionUtil.hpp
+++ b/query_execution/QueryExecutionUtil.hpp
@@ -74,7 +74,7 @@ class QueryExecutionUtil {
*
* @param sender_id The TMB client ID of the sender.
* @param receiver_id The TMB client ID of the receiver.
- * @param query_handle The QueryHandle used in the AdmitRequestMessage.
+ * @param query_handle The QueryHandles used in the AdmitRequestMessage.
* @param bus A pointer to the TMB.
* @param tagged_message A moved from reference to the tagged message.
*
@@ -84,7 +84,7 @@ class QueryExecutionUtil {
static tmb::MessageBus::SendStatus ConstructAndSendAdmitRequestMessage(
const tmb::client_id sender_id,
const tmb::client_id receiver_id,
- QueryHandle *query_handle,
+ std::vector<QueryHandle*> *query_handle,
MessageBus *bus) {
std::unique_ptr<AdmitRequestMessage> request_message(
new AdmitRequestMessage(query_handle));
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/fb05e6ec/query_optimizer/tests/ExecutionGeneratorTestRunner.cpp
----------------------------------------------------------------------
diff --git a/query_optimizer/tests/ExecutionGeneratorTestRunner.cpp b/query_optimizer/tests/ExecutionGeneratorTestRunner.cpp
index 8c1d306..92baf19 100644
--- a/query_optimizer/tests/ExecutionGeneratorTestRunner.cpp
+++ b/query_optimizer/tests/ExecutionGeneratorTestRunner.cpp
@@ -96,10 +96,12 @@ void ExecutionGeneratorTestRunner::runTestCase(
logical_generator.generatePlan(*result.parsed_statement));
execution_generator.generatePlan(physical_plan);
+ std::vector<QueryHandle*> query_handles;
+ query_handles.push_back(&query_handle);
QueryExecutionUtil::ConstructAndSendAdmitRequestMessage(
main_thread_client_id_,
foreman_->getBusClientID(),
- &query_handle,
+ &query_handles,
&bus_);
QueryExecutionUtil::ReceiveQueryCompletionMessage(