-
Notifications
You must be signed in to change notification settings - Fork 40
Open
Description
#![feature(test)]
extern crate test;
use test::Bencher;
use sqlparser::dialect::MySqlDialect;
use sqlparser::parser::Parser;
#[bench]
fn bench_sqlparser(b: &mut Bencher) {
let pg_dialect = MySqlDialect {};
let sql = r#"SELECT COUNT(*) FROM t"#;
let _ = Parser::parse_sql(&pg_dialect, sql).unwrap();
b.iter(||{
Parser::parse_sql(&pg_dialect, sql).unwrap();
});
}
#[bench]
fn bench_nomsql(b: &mut Bencher) {
let sql = r#"SELECT COUNT(*) FROM t"#;
let s=nom_sql::parser::parse_query(sql);
if s.is_err(){
panic!("{}",s.err().unwrap())
}
b.iter(||{
nom_sql::parser::parse_query(sql).unwrap();
});
}- result
running 2 tests
test bench_nomsql ... bench: 10,228 ns/iter (+/- 352)
test bench_sqlparser ... bench: 2,832 ns/iter (+/- 64)
Metadata
Metadata
Assignees
Labels
No labels