This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion-sqlparser-rs.git
The following commit(s) were added to refs/heads/main by this push:
new 8e36e8ee Updated Fuzzer harness to address all dialects (#2203)
8e36e8ee is described below
commit 8e36e8ee85e8d24c3bd6948298a4675e341a1db3
Author: Alex <[email protected]>
AuthorDate: Tue Feb 10 23:08:33 2026 +0800
Updated Fuzzer harness to address all dialects (#2203)
---
fuzz/fuzz_targets/fuzz_parse_sql.rs | 27 ++++++++++++++++++++++++---
1 file changed, 24 insertions(+), 3 deletions(-)
diff --git a/fuzz/fuzz_targets/fuzz_parse_sql.rs
b/fuzz/fuzz_targets/fuzz_parse_sql.rs
index 446b036c..15c198cb 100644
--- a/fuzz/fuzz_targets/fuzz_parse_sql.rs
+++ b/fuzz/fuzz_targets/fuzz_parse_sql.rs
@@ -16,14 +16,35 @@
// under the License.
use honggfuzz::fuzz;
-use sqlparser::dialect::GenericDialect;
+use sqlparser::dialect::{
+ AnsiDialect, BigQueryDialect, ClickHouseDialect, DatabricksDialect,
DuckDbDialect,
+ GenericDialect, HiveDialect, MsSqlDialect, MySqlDialect, OracleDialect,
PostgreSqlDialect,
+ RedshiftSqlDialect, SQLiteDialect, SnowflakeDialect,
+};
use sqlparser::parser::Parser;
fn main() {
+ let dialects: Vec<Box<dyn sqlparser::dialect::Dialect>> = vec![
+ Box::new(AnsiDialect::default()),
+ Box::new(BigQueryDialect::default()),
+ Box::new(ClickHouseDialect::default()),
+ Box::new(DatabricksDialect::default()),
+ Box::new(DuckDbDialect::default()),
+ Box::new(GenericDialect::default()),
+ Box::new(HiveDialect::default()),
+ Box::new(MsSqlDialect::default()),
+ Box::new(MySqlDialect::default()),
+ Box::new(OracleDialect::default()),
+ Box::new(PostgreSqlDialect::default()),
+ Box::new(RedshiftSqlDialect::default()),
+ Box::new(SQLiteDialect::default()),
+ Box::new(SnowflakeDialect::default()),
+ ];
loop {
fuzz!(|data: String| {
- let dialect = GenericDialect {};
- let _ = Parser::parse_sql(&dialect, &data);
+ for dialect in &dialects {
+ let _ = Parser::parse_sql(dialect.as_ref(), &data);
+ }
});
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]