You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hawq.apache.org by hsyuan <gi...@git.apache.org> on 2015/11/13 19:33:31 UTC

[GitHub] incubator-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

GitHub user hsyuan opened a pull request:

    https://github.com/apache/incubator-hawq/pull/110

    HAWQ-161. Port GPDB planner fixes to HAWQ

    Port GPDB planner fixes to HAWQ

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

    $ git pull https://github.com/hsyuan/incubator-hawq HAWQ-161

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

    https://github.com/apache/incubator-hawq/pull/110.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 #110
    
----
commit 8c1f5cd316ee5deef086ba01072649ea8c9fcf94
Author: Kenan Yao <ky...@pivotal.io>
Date:   2014-11-24T03:31:47Z

    HAWQ-161. Port GPDB planner fixes to HAWQ
    Query crashed with segmentation fault with optimizer=off.
    
    The crash happened in executor, while the root cause is in planner. The planner
    mistakenly believe that, when both the root node of subplan and the corresponding
    main plan node are executed in QD, there is no need to call function
    ParallelizeCorrelatedSubPlan. While, actually, in this situation presented in
    the JIRA, both the main plan node Window and subplan node Agg are executed in QD,
    we still need to do the subplan parallelization, otherwise, the SeqScan node
    cannot get the parameter from main plan, because they are in different slices.

commit d89b3c28e8448bdcc4c41a0c1fdbec2c04dd38d5
Author: Kenan Yao <ky...@pivotal.io>
Date:   2014-12-24T06:17:24Z

    HAWQ-161. Port GPDB planner fixes to HAWQ
    Query Crashes with "Error on receive...server closed the connection unexpectedly".
    
    Same issue as MPP-24563; after applying the fix for MPP-24563, this case still
    failed because of assert failure in apply_shareinput_xslice. Root cause is that
    cdbparallelize changes the plan but does not update the flow of the upper nodes,
    therefore, once ParallelizeCorrelatedSubPlanMutator takes action, then we cannot
    gurantee the correctness of the upper nodes' flow. Fix is to update the flow after
    transforming the lower nodes. Note that, the function
    ParallelizeCorrelatedSubPlanUpdateFlowMutator currently only handles the three
    known situations, if more cases of this kind found, just twickle that function
    can solve the problem.

commit 13f165fe2c5b78ed90092543f1616039446fd1fb
Author: Kenan Yao <ky...@pivotal.io>
Date:   2015-11-12T23:13:16Z

    HAWQ-161. Port GPDB planner fixes to HAWQ
    Planner generated unnecessary motion node for nested subplan which scan catalog table.

commit 06a85b6e32bf1388036d88f88130ddcd4d417530
Author: Kenan Yao <ky...@pivotal.io>
Date:   2015-11-12T23:36:37Z

    HAWQ-161. Port GPDB planner fixes to HAWQ
    SIGSEGV happened in HashJoin.
    
    This issue was caused by a previous fix for MPP-12637, and therefore a wrong
    plan was generated for query like:
    
    select c.relname from pg_class c where c.relname in (select b.table_name from
    information_schema.tables b where c.relname like '%id%');
    
    The RC for MPP-25724 is that, planner believes the subquery should not be pulled
    up because it contains CoerceToDomain node, while actually the subquery MUST be
    pulled up, otherwise HashJoin would fail.
    
    However, after I make planner pull up that subquery, the problem in MPP-12637
    would happen again, i.e, for query like below, planner would error out.
    
    select * FROM (select attnum::information_schema.cardinal_number from
    pg_attribute where attnum > 0) q where attnum = 4;
    
    The key problem here is the order of quals, including the pulled up ones, i.e,
    the order of "attnum = 4" and "attnum > 0", my solution is replacing
    RangeTblRef of pulled up subquery with the resulting FromExpr, which is
    consistent with PostgreSQL's style, instead of separately appending the fromlist
    and quals of the resulting FromExpr to the parent query in previous GPDB.
    
    The final problem here now is in function deconstruct_jointree(). Previous
    assumption is that the quals must be compatible with the same level relids,
    however for query #1 mentioned above, we should break this assumption, so I
    introduced the PostponedQual feature of PostgreSQL. Meanwhile, we should make
    some corresponding changes in pull_up_simple_query to appropriately do the
    ResolveNew procedure now.

----


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by entong <gi...@git.apache.org>.
Github user entong commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-163725759
  
    @hsyuan, are you a committer of hawq? If not I will help you merge this.


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by hsyuan <gi...@git.apache.org>.
Github user hsyuan commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-163726065
  
    no, I am not a committer.
    
    Thanks~
    Haisheng Yuan
    
    On Thu, Dec 10, 2015 at 11:27 AM, Entong Shen <no...@github.com>
    wrote:
    
    > @hsyuan <https://github.com/hsyuan>, are you a committer of hawq? If not
    > I will help you merge this.
    >
    > —
    > Reply to this email directly or view it on GitHub
    > <https://github.com/apache/incubator-hawq/pull/110#issuecomment-163725759>
    > .
    >



---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by cwelton <gi...@git.apache.org>.
Github user cwelton commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-171434510
  
    I see that this PR has been open for over a month.  @entong it looks like you were volunteering to handle the merge, is this still planned?  If not what can we do to get this moving forward?


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by atris <gi...@git.apache.org>.
Github user atris commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-156517271
  
    We were seeing transient failures for gp_optimizer earlier on hence the request 


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

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

    https://github.com/apache/incubator-hawq/pull/110


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by hsyuan <gi...@git.apache.org>.
Github user hsyuan commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-173362932
  
    Merged with master:
    6e2846fafe40c4259a5e81e2f5c187ff04bb8c07
    ada7919105cc1dd2042e1d675a6a6690ef7b51a1
    0f6beb62fa1b14a8ca1e8054c75345625cfb4464
    b95ed2513983ad36651beccc721ef51bf2e70494


---
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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by hsyuan <gi...@git.apache.org>.
Github user hsyuan commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-172706300
  
    @hornn Can you help me merge this PR into master? 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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by hsyuan <gi...@git.apache.org>.
Github user hsyuan commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-171436674
  
    Entong is not handling this PR any more. Can some committer help merge this PR back to master branch? 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-hawq pull request: HAWQ-161. Port GPDB planner fixes to ...

Posted by atris <gi...@git.apache.org>.
Github user atris commented on the pull request:

    https://github.com/apache/incubator-hawq/pull/110#issuecomment-156514839
  
    Fine for me
     +1
    Please make sure that tests pass when run multiple times. Preferably tested in a buildfarm 


---
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.
---