Skip to content

Commit f69ff11

Browse files
committed
Address PR comments
1 parent f922986 commit f69ff11

File tree

5 files changed

+29
-72
lines changed

5 files changed

+29
-72
lines changed

src/dialect/mod.rs

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1207,17 +1207,6 @@ pub trait Dialect: Debug + Any {
12071207
fn supports_semantic_view_table_factor(&self) -> bool {
12081208
false
12091209
}
1210-
1211-
/// Returns true if the dialect supports the `RESET` statement
1212-
/// for resetting session variables.
1213-
///
1214-
/// ```sql
1215-
/// RESET configuration_parameter;
1216-
/// RESET ALL;
1217-
/// ```
1218-
fn supports_reset(&self) -> bool {
1219-
false
1220-
}
12211210
}
12221211

12231212
/// This represents the operators for which precedence must be defined

src/dialect/postgresql.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -280,11 +280,4 @@ impl Dialect for PostgreSqlDialect {
280280
fn supports_interval_options(&self) -> bool {
281281
true
282282
}
283-
284-
/// Postgres supports the `RESET` statement for resetting session variables.
285-
///
286-
/// [PostgreSQL](https://www.postgresql.org/docs/current/sql-reset.html)
287-
fn supports_reset(&self) -> bool {
288-
true
289-
}
290283
}

src/parser/mod.rs

Lines changed: 2 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -656,7 +656,7 @@ impl<'a> Parser<'a> {
656656
self.prev_token();
657657
self.parse_vacuum()
658658
}
659-
Keyword::RESET if self.dialect.supports_reset() => self.parse_reset(),
659+
Keyword::RESET => self.parse_reset(),
660660
_ => self.expected("an SQL statement", next_token),
661661
},
662662
Token::LParen => {
@@ -17725,8 +17725,8 @@ impl<'a> Parser<'a> {
1772517725
}
1772617726
}
1772717727

17728+
/// Parses a RESET statement
1772817729
fn parse_reset(&mut self) -> Result<Statement, ParserError> {
17729-
// RESET { ALL | <configuration_parameter> }
1773017730
if self.parse_keyword(Keyword::ALL) {
1773117731
return Ok(Statement::Reset(ResetStatement { reset: Reset::ALL }));
1773217732
}
@@ -18542,29 +18542,4 @@ mod tests {
1854218542
assert!(Parser::parse_sql(&GenericDialect, &sql).is_err());
1854318543
}
1854418544
}
18545-
18546-
#[test]
18547-
fn test_reset_all() {
18548-
let sql = "RESET ALL";
18549-
let ast = Parser::parse_sql(&PostgreSqlDialect {}, sql).unwrap();
18550-
assert_eq!(
18551-
ast,
18552-
vec![Statement::Reset(ResetStatement { reset: Reset::ALL })]
18553-
);
18554-
}
18555-
18556-
#[test]
18557-
fn test_reset_parameter() {
18558-
for w in ["parameter_name", "extension.parameter_name"] {
18559-
let sql = format!("RESET {w}");
18560-
let parts = w.split(".").map(|s| s.into()).collect::<Vec<Ident>>();
18561-
let ast = Parser::parse_sql(&PostgreSqlDialect {}, &sql).unwrap();
18562-
assert_eq!(
18563-
ast,
18564-
vec![Statement::Reset(ResetStatement {
18565-
reset: Reset::ConfigurationParameter(ObjectName::from(parts))
18566-
})]
18567-
);
18568-
}
18569-
}
1857018545
}

tests/sqlparser_common.rs

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17613,3 +17613,30 @@ fn test_parse_alter_user() {
1761317613
}
1761417614
verified_stmt("ALTER USER u1 SET DEFAULT_SECONDARY_ROLES=('ALL'), PASSWORD='secret', WORKLOAD_IDENTITY=(TYPE=AWS, ARN='arn:aws:iam::123456789:r1/')");
1761517615
}
17616+
17617+
#[test]
17618+
fn parse_reset_statement() {
17619+
match verified_stmt("RESET some_parameter") {
17620+
Statement::Reset(ResetStatement { reset }) => match reset {
17621+
Reset::ConfigurationParameter(o) => {
17622+
assert_eq!(o, ObjectName::from(vec!["some_parameter".into()]))
17623+
}
17624+
_ => unreachable!(),
17625+
},
17626+
_ => unreachable!(),
17627+
}
17628+
match verified_stmt("RESET some_extension.some_parameter") {
17629+
Statement::Reset(ResetStatement { reset }) => match reset {
17630+
Reset::ConfigurationParameter(o) => assert_eq!(
17631+
o,
17632+
ObjectName::from(vec!["some_extension".into(), "some_parameter".into()])
17633+
),
17634+
_ => unreachable!(),
17635+
},
17636+
_ => unreachable!(),
17637+
}
17638+
match verified_stmt("RESET ALL") {
17639+
Statement::Reset(ResetStatement { reset }) => assert_eq!(reset, Reset::ALL),
17640+
_ => unreachable!(),
17641+
}
17642+
}

tests/sqlparser_postgres.rs

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -6652,30 +6652,3 @@ fn parse_foreign_key_match_with_actions() {
66526652

66536653
pg_and_generic().verified_stmt(sql);
66546654
}
6655-
6656-
#[test]
6657-
fn parse_reset_statement() {
6658-
match pg().verified_stmt("RESET some_parameter") {
6659-
Statement::Reset(ResetStatement { reset }) => match reset {
6660-
Reset::ConfigurationParameter(o) => {
6661-
assert_eq!(o, ObjectName::from(vec!["some_parameter".into()]))
6662-
}
6663-
_ => unreachable!(),
6664-
},
6665-
_ => unreachable!(),
6666-
}
6667-
match pg().verified_stmt("RESET some_extension.some_parameter") {
6668-
Statement::Reset(ResetStatement { reset }) => match reset {
6669-
Reset::ConfigurationParameter(o) => assert_eq!(
6670-
o,
6671-
ObjectName::from(vec!["some_extension".into(), "some_parameter".into()])
6672-
),
6673-
_ => unreachable!(),
6674-
},
6675-
_ => unreachable!(),
6676-
}
6677-
match pg().verified_stmt("RESET ALL") {
6678-
Statement::Reset(ResetStatement { reset }) => assert_eq!(reset, Reset::ALL),
6679-
_ => unreachable!(),
6680-
}
6681-
}

0 commit comments

Comments
 (0)