Uh oh!
There was an error while loading. Please reload this page.
[SPARK-2059][SQL] Don't throw TreeNodeException in execution.ExplainCommand - #1294
[SPARK-2059][SQL] Don't throw TreeNodeException in execution.ExplainCommand#1294liancheng wants to merge 1 commit into
execution.ExplainCommand#1294Conversation
This is a fix for the problem revealed by [PR apache#1265](apache#1265)
execution.ExplainCommandexecution.ExplainCommandAmplabJenkins
commented
Jul 3, 2014
Merged build triggered. |
AmplabJenkins
commented
Jul 3, 2014
Merged build started. |
AmplabJenkins
commented
Jul 3, 2014
Merged build finished. |
AmplabJenkins
commented
Jul 3, 2014
Refer to this link for build results: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/16314/ |
rxin
commented
Jul 3, 2014
Can you paste the error messages thrown by this? |
liancheng
commented
Jul 3, 2014
Added example error message in the PR description. Maybe I should just merge #1265 here so that you can merge them altogether? |
rxin
commented
Jul 4, 2014
It's probably ok to break them into two. Jenkins, retest this please. |
rxin
commented
Jul 4, 2014
Jenkins, retest this please. |
AmplabJenkins
commented
Jul 4, 2014
Merged build triggered. |
AmplabJenkins
commented
Jul 4, 2014
Merged build started. |
AmplabJenkins
commented
Jul 4, 2014
Merged build finished. All automated tests passed. |
AmplabJenkins
commented
Jul 4, 2014
All automated tests passed. |
rxin
commented
Jul 4, 2014
Thanks. I'm merging this in master and branch-1.0. |
…Command` This is a fix for the problem revealed by PR #1265. Currently `HiveComparisonSuite` ignores output of `ExplainCommand` since Catalyst query plan is quite different from Hive query plan. But exceptions throw from `CheckResolution` still breaks test cases. This PR catches any `TreeNodeException` and reports it as part of the query explanation. After merging this PR, PR #1265 can also be merged safely. For a normal query: ``` scala> hql("explain select key from src").foreach(println) ... [Physical execution plan:] [HiveTableScan [key#9], (MetastoreRelation default, src, None), None] ``` For a wrong query with unresolved attribute(s): ``` scala> hql("explain select kay from src").foreach(println) ... [Error occurred during query planning: ] [Unresolved attributes: 'kay, tree:] [Project ['kay]] [ LowerCaseSchema ] [ MetastoreRelation default, src, None] ``` Author: Cheng Lian <lian.cs.zju@gmail.com> Closes#1294 from liancheng/safe-explain and squashes the following commits: 4318911 [Cheng Lian] Don't throw TreeNodeException in `execution.ExplainCommand` (cherry picked from commit 5448804) Signed-off-by: Reynold Xin <rxin@apache.org>
…Command` This is a fix for the problem revealed by PR #1265. Currently `HiveComparisonSuite` ignores output of `ExplainCommand` since Catalyst query plan is quite different from Hive query plan. But exceptions throw from `CheckResolution` still breaks test cases. This PR catches any `TreeNodeException` and reports it as part of the query explanation. After merging this PR, PR #1265 can also be merged safely. For a normal query: ``` scala> hql("explain select key from src").foreach(println) ... [Physical execution plan:] [HiveTableScan [key#9], (MetastoreRelation default, src, None), None] ``` For a wrong query with unresolved attribute(s): ``` scala> hql("explain select kay from src").foreach(println) ... [Error occurred during query planning: ] [Unresolved attributes: 'kay, tree:] [Project ['kay]] [ LowerCaseSchema ] [ MetastoreRelation default, src, None] ``` Author: Cheng Lian <lian.cs.zju@gmail.com> Closes#1294 from liancheng/safe-explain and squashes the following commits: 4318911 [Cheng Lian] Don't throw TreeNodeException in `execution.ExplainCommand` (cherry picked from commit 5448804) Signed-off-by: Reynold Xin <rxin@apache.org>
…Command` This is a fix for the problem revealed by PR apache#1265. Currently `HiveComparisonSuite` ignores output of `ExplainCommand` since Catalyst query plan is quite different from Hive query plan. But exceptions throw from `CheckResolution` still breaks test cases. This PR catches any `TreeNodeException` and reports it as part of the query explanation. After merging this PR, PR apache#1265 can also be merged safely. For a normal query: ``` scala> hql("explain select key from src").foreach(println) ... [Physical execution plan:] [HiveTableScan [key#9], (MetastoreRelation default, src, None), None] ``` For a wrong query with unresolved attribute(s): ``` scala> hql("explain select kay from src").foreach(println) ... [Error occurred during query planning: ] [Unresolved attributes: 'kay, tree:] [Project ['kay]] [ LowerCaseSchema ] [ MetastoreRelation default, src, None] ``` Author: Cheng Lian <lian.cs.zju@gmail.com> Closesapache#1294 from liancheng/safe-explain and squashes the following commits: 4318911 [Cheng Lian] Don't throw TreeNodeException in `execution.ExplainCommand`
This is a fix for the problem revealed by PR #1265.
Currently
HiveComparisonSuiteignores output ofExplainCommandsince Catalyst query plan is quite different from Hive query plan. But exceptions throw fromCheckResolutionstill breaks test cases. This PR catches anyTreeNodeExceptionand reports it as part of the query explanation.After merging this PR, PR #1265 can also be merged safely.
For a normal query:
For a wrong query with unresolved attribute(s):