-
Notifications
You must be signed in to change notification settings - Fork 653
Support CREATE SEQUENCE
options in any order
#2043
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
base: main
Are you sure you want to change the base?
Conversation
let sql9 = "CREATE SEQUENCE name6 | ||
AS INTEGER | ||
START WITH 1 | ||
INCREMENT BY 1 | ||
NO MINVALUE | ||
NO MAXVALUE | ||
CACHE 1"; | ||
pg().one_statement_parses_to(sql9, "CREATE SEQUENCE name6 AS INTEGER START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1"); |
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.
let sql9 = "CREATE SEQUENCE name6 | |
AS INTEGER | |
START WITH 1 | |
INCREMENT BY 1 | |
NO MINVALUE | |
NO MAXVALUE | |
CACHE 1"; | |
pg().one_statement_parses_to(sql9, "CREATE SEQUENCE name6 AS INTEGER START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1"); | |
pg().verified_stmt("CREATE SEQUENCE name6 AS INTEGER START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1"); |
it looks like this should be equivalent?
let mut should_continue_loop = true; | ||
while should_continue_loop { |
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.
let mut should_continue_loop = true; | |
while should_continue_loop { | |
loop { |
It looks like we can skip the bool var and instead use a combination of continue
and break
to manage the loop?
Err(ParserError::ParserError(_)) | ||
)); | ||
|
||
let sql9 = "CREATE SEQUENCE name6 |
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.
Can we add a test case with duplicate options?
@iffyio thanks for the review, I'll be unable to address the comments for the next 2 weeks, but after that I'll address them |
This changes the parsing of the
CREATE SEQUENCE
options to allow the individual options to appear in any order.The reason I'm opening this pull request is that the Postgres
pg_dump
utility dumpsCREATE SEQUENCE
statements like this:Where the
START WITH 1
appears before theINCREMENT BY 1
, Postgres allows this but the parser did not.There should not be any noticable performance impact I think. I did run the benchmarks and did not see any impact.