Uh oh!
There was an error while loading. Please reload this page.
[SPARK-33087][SQL] DataFrameWriterV2 should delegate table resolution to the analyzer - #29970
[SPARK-33087][SQL] DataFrameWriterV2 should delegate table resolution to the analyzer#29970cloud-fan wants to merge 1 commit into
Conversation
cloud-fan
commented
Oct 7, 2020
SparkQA
commented
Oct 7, 2020
Kubernetes integration test starting |
| writeOptions: Map[String, String], | ||
| isByName: Boolean) extends V2WriteCommand | ||
| isByName: Boolean) extends V2WriteCommand { | ||
| override def withNewTable(t: NamedRelation): AppendData = copy(table = t) |
There was a problem hiding this comment.
Can we just make the table be a child too and not add a special case for it in the Analyzer?
There was a problem hiding this comment.
IIRC there was a discussion about it before and we decided to not making table as a child for writing commands. The same applies to InsertIntoStatement.
I can't clearly recall what the reason was, probably because we need to strip SubqueryAlias for table in the writing commands.
There was a problem hiding this comment.
one related discussion: https://github.com/apache/spark/pull/21305/files#r206746383
There was a problem hiding this comment.
Now I recalled. Scan nodes under writing command are special, as they are not for scan, and shouldn't apply things like filter pushdown.
SparkQA
commented
Oct 7, 2020
Kubernetes integration test status success |
SparkQA
commented
Oct 7, 2020
Test build #129524 has finished for PR 29970 at commit
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
HeartSaVioR
commented
Oct 24, 2020
retest this, please |
SparkQA
commented
Oct 24, 2020
Test build #130226 has finished for PR 29970 at commit
|
HeartSaVioR
commented
Oct 24, 2020
Looks like this needs rebasing with recent master. @cloud-fan |
SparkQA
commented
Oct 26, 2020
Kubernetes integration test starting |
SparkQA
commented
Oct 26, 2020
Kubernetes integration test status success |
SparkQA
commented
Oct 26, 2020
Test build #130286 has finished for PR 29970 at commit
|
HeartSaVioR
commented
Oct 26, 2020
retest this, please |
SparkQA
commented
Oct 26, 2020
Kubernetes integration test starting |
SparkQA
commented
Oct 26, 2020
Kubernetes integration test status failure |
SparkQA
commented
Oct 27, 2020
Test build #130300 has finished for PR 29970 at commit
|
cloud-fan
commented
Nov 6, 2020
cc @dongjoon-hyun as well. |
SparkQA
commented
Nov 6, 2020
Kubernetes integration test starting |
SparkQA
commented
Nov 6, 2020
Kubernetes integration test status success |
SparkQA
commented
Nov 6, 2020
Test build #130730 has finished for PR 29970 at commit
|
HeartSaVioR
commented
Nov 9, 2020
retest this, please |
SparkQA
commented
Nov 9, 2020
Kubernetes integration test starting |
SparkQA
commented
Nov 9, 2020
Kubernetes integration test status success |
SparkQA
commented
Nov 9, 2020
Test build #130767 has finished for PR 29970 at commit
|
cloud-fan
commented
Nov 9, 2020
GA passed, merging to master, thanks for the reviews! |
What changes were proposed in this pull request?
This PR makes
DataFrameWriterV2to create query plans withUnresolvedRelationand leave the table resolution work to the analyzer.Why are the changes needed?
Table resolution work should be done by the analyzer. After this PR, the behavior is more consistent between different APIs (DataFrameWriter, DataFrameWriterV2 and SQL). See the next section for behavior changes.
Does this PR introduce any user-facing change?
Yes.
DataFrameWriterand SQL INSERT.How was this patch tested?
new tests