-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Enable TableProviderFactories to receive additional options when creating an external table #4126
Conversation
@avantgardnerio fyi |
Thanks @andygrove . @timvw read my mind - this was actually underway in the early versions of the PR but I abandoned it. LGTM = looks great to me :) |
@@ -627,6 +677,48 @@ mod tests { | |||
"CREATE EXTERNAL TABLE t(c1 int) STORED AS CSV PARTITIONED BY (p1 int) LOCATION 'foo.csv'"; | |||
expect_parse_error(sql, "sql parser error: Expected ',' or ')' after partition definition, found: int"); | |||
|
|||
// positive case: additional options (one entry) can be specified | |||
let sql = | |||
"CREATE EXTERNAL TABLE t STORED AS x OPTIONS ('k1' 'v1') LOCATION 'blahblah'"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I expected to see 'k1' = 'v1'
here. Is there a particular SQL dialect being emulated here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The k1=v1 is what the code originally did...
After feedback from @avantgardnerio I changed to follow postgresql' create external table [ OPTIONS ( option 'value' [, ... ] ) ]
…Factory to receive entire cmd
Benchmark runs are scheduled for baseline = e8fe042 and contender = 2a834d1. 2a834d1 is a master commit associated with this PR. Results will be available as each benchmark for each run completes. |
Which issue does this PR close?
Closes #4125.
Are there any user-facing changes?
The user can now provide additional options (depending on the tableprovider(factory)) when creating an external table