Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SPARK-12855][SQL] Remove parser dialect developer API #10801

Closed
wants to merge 3 commits into from

Conversation

rxin
Copy link
Contributor

@rxin rxin commented Jan 18, 2016

This pull request removes the public developer parser API for external parsers. Given everything a parser depends on (e.g. logical plans and expressions) are internal and not stable, external parsers will break with every release of Spark. It is a bad idea to create the illusion that Spark actually supports pluggable parsers. In addition, this also reduces incentives for 3rd party projects to contribute parse improvements back to Spark.

@rxin
Copy link
Contributor Author

rxin commented Jan 18, 2016

cc @hvanhovell

@rxin
Copy link
Contributor Author

rxin commented Jan 18, 2016

BTW - I kept the ParserDialect trait, although I'm thinking we should rename it something else (e.g. ParserInterface?).

I didn't change the DDLParser because I'm assuming we will remove it soon (replaced by the Hive one).

@SparkQA
Copy link

SparkQA commented Jan 18, 2016

Test build #2390 has finished for PR 10801 at commit 5729ddf.

  • This patch fails MiMa tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jan 18, 2016

Test build #49573 has finished for PR 10801 at commit 5729ddf.

  • This patch fails MiMa tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jan 18, 2016

Test build #2391 has finished for PR 10801 at commit 5729ddf.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jan 18, 2016

Test build #49574 has finished for PR 10801 at commit dcdbd2c.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

}
}
@transient
protected[sql] override val sqlParser: ParserDialect = new ExtendedHiveQlParser(this)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to add the SparkSQLParser here: new SparkSQLParser(new ExtendedHiveQlParser(this))

@SparkQA
Copy link

SparkQA commented Jan 18, 2016

Test build #49610 has finished for PR 10801 at commit 09c47f0.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@hvanhovell
Copy link
Contributor

LGTM

@rxin
Copy link
Contributor Author

rxin commented Jan 18, 2016

Thanks - merging this in.

@asfgit asfgit closed this in 38c3c0e Jan 18, 2016
asfgit pushed a commit that referenced this pull request Jan 19, 2016
Based on discussions in #10801, I'm submitting a pull request to rename ParserDialect to ParserInterface.

Author: Reynold Xin <rxin@databricks.com>

Closes #10817 from rxin/SPARK-12889.
asfgit pushed a commit that referenced this pull request Mar 17, 2016
…c and test

## What changes were proposed in this pull request?

Since developer API of plug-able parser has been removed in #10801 , docs should be updated accordingly.

## How was this patch tested?

This patch will not affect the real code path.

Author: Daoyuan Wang <daoyuan.wang@intel.com>

Closes #11758 from adrian-wang/spark12855.
roygao94 pushed a commit to roygao94/spark that referenced this pull request Mar 22, 2016
…c and test

## What changes were proposed in this pull request?

Since developer API of plug-able parser has been removed in apache#10801 , docs should be updated accordingly.

## How was this patch tested?

This patch will not affect the real code path.

Author: Daoyuan Wang <daoyuan.wang@intel.com>

Closes apache#11758 from adrian-wang/spark12855.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants