HeartSaVioR commented on issue #27107: [SPARK-30436][SQL] Allow CREATE EXTERNAL TABLE with only requiring LOCATION URL: https://github.com/apache/spark/pull/27107#issuecomment-571823610 Oh OK. I got the intention why the change was done like so, but still feel CREATE EXTERNAL TABLE is affected by side-effect instead of some kind of intention, due to ambiguity between two syntaxes. Let me say again, even with `USING HIVE` we no longer support `CREATE EXTERNAL TABLE ... LOCATION`, which is a breaking change unlike we describe that the change is only in the default value of provider. Migration guide doesn't explain the change, and also doesn't provide any alternatives. Without going through the parser rule it's hard to know which part is required, so they would end up with turning on the legacy config. While we are here... why not applying `legacy_create_hive_table_by_default_enabled` to createHiveTable as well and make it require STORED AS (or any of the three) for the case `legacy_create_hive_table_by_default_enabled` is disabled? That would be the way we can resolve ambiguity in parser rule as well as future documentation - assuming create table is planned to be documented. When removing legacy config it's trivial to get rid of both sides.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org