You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by sameeragarwal <gi...@git.apache.org> on 2016/03/04 05:56:49 UTC

[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

GitHub user sameeragarwal opened a pull request:

    https://github.com/apache/spark/pull/11511

    [SPARK-13668][SQL] Reorder filter/join predicates to short-circuit isNotNull checks

    ## What changes were proposed in this pull request?
    
    If a filter predicate or a join condition consists of `IsNotNull` checks, we should reorder these checks such that these non-nullability checks are evaluated before the rest of the predicates.
    
    For e.g., if a filter predicate is of the form `a > 5 && isNotNull(b)`, we should rewrite this as `isNotNull(b) && a > 5` during physical plan generation.
    
    ## How was this patch tested?
    
    new unit tests that verify the physical plan for both filters and joins in `ReorderedPredicateSuite`

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

    $ git pull https://github.com/sameeragarwal/spark reorder-isnotnull

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

    https://github.com/apache/spark/pull/11511.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 #11511
    
----
commit 9341da6bc45c868d14c4f5d4c020e40a6b5ba593
Author: Sameer Agarwal <sa...@databricks.com>
Date:   2016-03-02T23:57:57Z

    Reorder conditions in join and filters

commit dfb33ecd27bb65903dd4a0a2cd6bfcd0d8d912c3
Author: Sameer Agarwal <sa...@databricks.com>
Date:   2016-03-03T01:20:18Z

    unit tests: ReorderedPredicateSuite

----


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192487362
  
    **[Test build #52488 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52488/consoleFull)** for PR 11511 at commit [`4a8a9a3`](https://github.com/apache/spark/commit/4a8a9a38b5d6da3f9379f98caab6839d7636fae0).


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192440723
  
    LGTM


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192485787
  
    **[Test build #52487 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52487/consoleFull)** for PR 11511 at commit [`d75d313`](https://github.com/apache/spark/commit/d75d313c6aefa404aef5e6ace3cef280fd67637f).


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192524271
  
    Merged build finished. Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-194015941
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52692/
    Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192525593
  
    **[Test build #52488 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52488/consoleFull)** for PR 11511 at commit [`4a8a9a3`](https://github.com/apache/spark/commit/4a8a9a38b5d6da3f9379f98caab6839d7636fae0).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192105598
  
    **[Test build #52447 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52447/consoleFull)** for PR 11511 at commit [`dfb33ec`](https://github.com/apache/spark/commit/dfb33ecd27bb65903dd4a0a2cd6bfcd0d8d912c3).


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#discussion_r55078700
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/planning/QueryPlanner.scala ---
    @@ -26,8 +28,28 @@ import org.apache.spark.sql.catalyst.trees.TreeNode
      * be used for execution. If this strategy does not apply to the give logical operation then an
      * empty list should be returned.
      */
    -abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]] extends Logging {
    +abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]]
    +  extends PredicateHelper with Logging {
    +
       def apply(plan: LogicalPlan): Seq[PhysicalPlan]
    +
    +  // Attempts to re-order the individual conjunctive predicates in an expression to short circuit
    +  // the evaluation of relatively cheaper checks (e.g., checking for nullability) before others.
    +  protected def getReorderedExpression(expr: Expression): Expression = {
    +    splitConjunctivePredicates(expr)
    +      .sortWith((x, _) => x.isInstanceOf[IsNotNull])
    --- End diff --
    
    As part of, we should rewrite the remaining attributes so that they are non-nullable. Are you planning on doing this in another 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.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-194026381
  
    LGTM. Merging to master.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#discussion_r55433949
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/planning/QueryPlanner.scala ---
    @@ -26,8 +28,28 @@ import org.apache.spark.sql.catalyst.trees.TreeNode
      * be used for execution. If this strategy does not apply to the give logical operation then an
      * empty list should be returned.
      */
    -abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]] extends Logging {
    +abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]]
    +  extends PredicateHelper with Logging {
    +
       def apply(plan: LogicalPlan): Seq[PhysicalPlan]
    +
    +  // Attempts to re-order the individual conjunctive predicates in an expression to short circuit
    +  // the evaluation of relatively cheaper checks (e.g., checking for nullability) before others.
    +  protected def reorderPredicates(expr: Expression): Expression = {
    --- End diff --
    
    Thanks, I modified the 2 tests in `ReorderPredicateSuite` to verified that the sort is stable.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-194014876
  
    **[Test build #52692 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52692/consoleFull)** for PR 11511 at commit [`21d8897`](https://github.com/apache/spark/commit/21d889706052bb4fc3655b9150b00900f88a7388).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds the following public classes _(experimental)_:
      * `class ReorderedPredicateSuite extends SharedSQLContext with PredicateHelper `


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192137331
  
    **[Test build #52447 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52447/consoleFull)** for PR 11511 at commit [`dfb33ec`](https://github.com/apache/spark/commit/dfb33ecd27bb65903dd4a0a2cd6bfcd0d8d912c3).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds the following public classes _(experimental)_:
      * `class ReorderedPredicateSuite extends QueryTest with SharedSQLContext with PredicateHelper `


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-193983228
  
    **[Test build #52692 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52692/consoleFull)** for PR 11511 at commit [`21d8897`](https://github.com/apache/spark/commit/21d889706052bb4fc3655b9150b00900f88a7388).


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#discussion_r55078587
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/planning/QueryPlanner.scala ---
    @@ -26,8 +28,28 @@ import org.apache.spark.sql.catalyst.trees.TreeNode
      * be used for execution. If this strategy does not apply to the give logical operation then an
      * empty list should be returned.
      */
    -abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]] extends Logging {
    +abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]]
    +  extends PredicateHelper with Logging {
    +
       def apply(plan: LogicalPlan): Seq[PhysicalPlan]
    +
    +  // Attempts to re-order the individual conjunctive predicates in an expression to short circuit
    +  // the evaluation of relatively cheaper checks (e.g., checking for nullability) before others.
    +  protected def getReorderedExpression(expr: Expression): Expression = {
    --- End diff --
    
    nit: i think this is more aptly named "reorderPredicates"


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192138372
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52447/
    Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-194015933
  
    Merged build finished. Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#discussion_r55107202
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/planning/QueryPlanner.scala ---
    @@ -26,8 +28,28 @@ import org.apache.spark.sql.catalyst.trees.TreeNode
      * be used for execution. If this strategy does not apply to the give logical operation then an
      * empty list should be returned.
      */
    -abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]] extends Logging {
    +abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]]
    +  extends PredicateHelper with Logging {
    +
       def apply(plan: LogicalPlan): Seq[PhysicalPlan]
    +
    +  // Attempts to re-order the individual conjunctive predicates in an expression to short circuit
    +  // the evaluation of relatively cheaper checks (e.g., checking for nullability) before others.
    +  protected def reorderPredicates(expr: Expression): Expression = {
    --- End diff --
    
    Can we have a test to make sure this reordering is stable?


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192138366
  
    Merged build finished. Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192523483
  
    **[Test build #52487 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/52487/consoleFull)** for PR 11511 at commit [`d75d313`](https://github.com/apache/spark/commit/d75d313c6aefa404aef5e6ace3cef280fd67637f).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192486744
  
    Thanks, comments addressed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#discussion_r55080364
  
    --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/planning/QueryPlanner.scala ---
    @@ -26,8 +28,28 @@ import org.apache.spark.sql.catalyst.trees.TreeNode
      * be used for execution. If this strategy does not apply to the give logical operation then an
      * empty list should be returned.
      */
    -abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]] extends Logging {
    +abstract class GenericStrategy[PhysicalPlan <: TreeNode[PhysicalPlan]]
    +  extends PredicateHelper with Logging {
    +
       def apply(plan: LogicalPlan): Seq[PhysicalPlan]
    +
    +  // Attempts to re-order the individual conjunctive predicates in an expression to short circuit
    +  // the evaluation of relatively cheaper checks (e.g., checking for nullability) before others.
    +  protected def getReorderedExpression(expr: Expression): Expression = {
    +    splitConjunctivePredicates(expr)
    +      .sortWith((x, _) => x.isInstanceOf[IsNotNull])
    --- End diff --
    
    yes, I was thinking of doing that in the logical plan in a separate 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.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192141195
  
    cc @nongli @yhuai 


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192524275
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52487/
    Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192525801
  
    Merged build finished. Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-13668][SQL] Reorder filter/join predica...

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

    https://github.com/apache/spark/pull/11511#issuecomment-192525802
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52488/
    Test PASSed.


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

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org