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

Reply via email to