HeartSaVioR edited a comment 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` (or setting default provider to 
Hive in conf) 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:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to