You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@quickstep.apache.org by zu...@apache.org on 2016/05/27 03:23:22 UTC
[31/50] [abbrv] incubator-quickstep git commit: TextScan operator
made partition-aware.
TextScan operator made partition-aware.
Project: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/commit/71d843f3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/tree/71d843f3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/diff/71d843f3
Branch: refs/heads/partition_aware_hashjoin_with_optimizer_support
Commit: 71d843f39d659ecb2a7427b0507690408f659f0f
Parents: e70f9e1
Author: Adalbert Gerald Soosai Raj <ge...@cs.wisc.edu>
Authored: Mon May 23 15:29:10 2016 -0500
Committer: Adalbert Gerald Soosai Raj <ge...@cs.wisc.edu>
Committed: Mon May 23 15:29:10 2016 -0500
----------------------------------------------------------------------
query_optimizer/ExecutionGenerator.cpp | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/71d843f3/query_optimizer/ExecutionGenerator.cpp
----------------------------------------------------------------------
diff --git a/query_optimizer/ExecutionGenerator.cpp b/query_optimizer/ExecutionGenerator.cpp
index c50fde6..e2bfd46 100644
--- a/query_optimizer/ExecutionGenerator.cpp
+++ b/query_optimizer/ExecutionGenerator.cpp
@@ -1042,10 +1042,16 @@ void ExecutionGenerator::convertCopyFrom(
query_context_proto_->insert_destinations_size();
S::InsertDestination *insert_destination_proto = query_context_proto_->add_insert_destinations();
- insert_destination_proto->set_insert_destination_type(S::InsertDestinationType::BLOCK_POOL);
+ const PartitionScheme &partition_scheme = physical_plan->catalog_relation()->getPartitionScheme();
+ const NUMAPlacementScheme &placement_scheme = physical_plan->catalog_relation()->getNUMAPlacementScheme();
+ insert_destination_proto->set_insert_destination_type(S::InsertDestinationType::PARTITION_AWARE);
insert_destination_proto->set_relation_id(output_relation->getID());
insert_destination_proto->mutable_layout()->MergeFrom(
output_relation->getDefaultStorageBlockLayout().getDescription());
+ insert_destination_proto->MutableExtension(S::PartitionAwareInsertDestination::partition_scheme)
+ ->MergeFrom(partition_scheme.getProto());
+ insert_destination_proto->MutableExtension(S::PartitionAwareInsertDestination::placement_scheme)
+ ->MergeFrom(placement_scheme.getProto());
const vector<block_id> blocks(physical_plan->catalog_relation()->getBlocksSnapshot());
for (const block_id block : blocks) {