You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@quickstep.apache.org by zuyu <gi...@git.apache.org> on 2017/01/13 01:23:01 UTC

[GitHub] incubator-quickstep pull request #160: Added optimizer support regarding has...

GitHub user zuyu opened a pull request:

    https://github.com/apache/incubator-quickstep/pull/160

    Added optimizer support regarding hash partitions.

    This PR added optimizer support for hash partitions in CreateTable / Insert / InsertSelection / UpdateTable.
    
    Assigned to @hbdeshmukh. Thanks!

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/incubator-quickstep quickstep_partition_parser_support

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-quickstep/pull/160.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #160
    
----
commit 6b063893cac0703e1c13fa6c7633e15c8d1db183
Author: Zuyu Zhang <zu...@apache.org>
Date:   2017-01-11T01:00:08Z

    Added optimizer support regarding hash partitions.
    
      - CreateTable
      - Insert / InsertSelection
      - UpdateTable

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep pull request #160: Added optimizer support regarding has...

Posted by jianqiao <gi...@git.apache.org>.
Github user jianqiao commented on a diff in the pull request:

    https://github.com/apache/incubator-quickstep/pull/160#discussion_r96449905
  
    --- Diff: query_optimizer/logical/CreateTable.hpp ---
    @@ -100,8 +108,9 @@ class CreateTable : public Logical {
       static CreateTablePtr Create(
           const std::string &relation_name,
           const std::vector<expressions::AttributeReferencePtr> &attributes,
    -      const std::shared_ptr<const StorageBlockLayoutDescription> &block_properties) {
    -    return CreateTablePtr(new CreateTable(relation_name, attributes, block_properties));
    +      const std::shared_ptr<const StorageBlockLayoutDescription> &block_properties,
    +      const std::shared_ptr<const serialization::PartitionSchemeHeader> &partition_scheme_header_proto) {
    --- End diff --
    
    Add a comment for `partition_scheme_header_proto` in method header (and mention that `partition_scheme_header_proto` can be `nullptr` if not specified).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep pull request #160: Added optimizer support regarding has...

Posted by zuyu <gi...@git.apache.org>.
Github user zuyu closed the pull request at:

    https://github.com/apache/incubator-quickstep/pull/160


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep issue #160: Added optimizer support regarding hash parti...

Posted by jianqiao <gi...@git.apache.org>.
Github user jianqiao commented on the issue:

    https://github.com/apache/incubator-quickstep/pull/160
  
    LGTM except some minor style issues.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep pull request #160: Added optimizer support regarding has...

Posted by jianqiao <gi...@git.apache.org>.
Github user jianqiao commented on a diff in the pull request:

    https://github.com/apache/incubator-quickstep/pull/160#discussion_r96445324
  
    --- Diff: query_optimizer/resolver/Resolver.cpp ---
    @@ -478,9 +484,32 @@ L::LogicalPtr Resolver::resolveCreateTable(
       std::shared_ptr<const StorageBlockLayoutDescription>
           block_properties(resolveBlockProperties(create_table_statement));
     
    -  return L::CreateTable::Create(relation_name, attributes, block_properties);
    +  std::shared_ptr<const S::PartitionSchemeHeader> partition_scheme_header_proto(
    +      resolvePartitionClause(create_table_statement));
    +
    +  return L::CreateTable::Create(relation_name, attributes, block_properties, partition_scheme_header_proto);
    +}
    +
    +namespace {
    +
    +attribute_id GetAttributeIdFromName(const PtrList<ParseAttributeDefinition>&attribute_definition_list,
    --- End diff --
    
    Need a space between type and parameter here.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep issue #160: Added optimizer support regarding hash parti...

Posted by zuyu <gi...@git.apache.org>.
Github user zuyu commented on the issue:

    https://github.com/apache/incubator-quickstep/pull/160
  
    Fixed the comments. Thanks!


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep pull request #160: Added optimizer support regarding has...

Posted by jianqiao <gi...@git.apache.org>.
Github user jianqiao commented on a diff in the pull request:

    https://github.com/apache/incubator-quickstep/pull/160#discussion_r96450595
  
    --- Diff: query_optimizer/physical/CreateTable.hpp ---
    @@ -107,8 +115,9 @@ class CreateTable : public Physical {
       static CreateTablePtr Create(
           const std::string &relation_name,
           const std::vector<expressions::AttributeReferencePtr> &attributes,
    -      const std::shared_ptr<const StorageBlockLayoutDescription> &block_properties) {
    -    return CreateTablePtr(new CreateTable(relation_name, attributes, block_properties));
    +      const std::shared_ptr<const StorageBlockLayoutDescription> &block_properties,
    +      const std::shared_ptr<const serialization::PartitionSchemeHeader> &partition_scheme_header_proto) {
    +    return CreateTablePtr(new CreateTable(relation_name, attributes, block_properties, partition_scheme_header_proto));
    --- End diff --
    
    Add a comment for `partition_scheme_header_proto` in method header.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-quickstep issue #160: Added optimizer support regarding hash parti...

Posted by hbdeshmukh <gi...@git.apache.org>.
Github user hbdeshmukh commented on the issue:

    https://github.com/apache/incubator-quickstep/pull/160
  
    Hi @zuyu, Would you mind assigning @jianqiao to review this PR? I believe he will be a better reviewer for this PR. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---