apache / apache/datafusion-sqlparser-rs

tests/sqlparser_common.rs / parse_create_view_with_options gives different results with ClickHouseDialect

Aperta
#1,449 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
3.5k
Fork
772
Merge medio
4g 9h
PR unite (30g)
17

Descrizione

When changing the test to include ClickHouseDialect, it fails like so:

```
---- parse_create_view_with_columns stdout ----
thread 'parse_create_view_with_columns' panicked at src/test_utils.rs:77:21:
assertion `left == right` failed: Parse results with DatabricksDialect are different from ClickHouseDialect
left: Ok([CreateView { or_replace: false, materialized: false, name: ObjectName([Ident { value: "v", quote_style: None }]), columns: [ViewColumnDef { name: Ident { value: "has", quote_style: None }, data_type: None, options: None }, ViewColumnDef { name: Ident { value: "cols", quote_style: None }, data_type: None, options: None }], query: Query { with: None, body: Select(Select { distinct: None, top: None, projection: [UnnamedExpr(Value(Number("1", false))), UnnamedExpr(Value(Number("2", false)))], into: None, from: [], lateral_views: [], prewhere: None, selection: None, group_by: Expressions([], []), cluster_by: [], distribute_by: [], sort_by: [], having: None, named_window: [], qualify: None, window_before_qualify: false, value_table_mode: None, connect_by: None }), order_by: None, limit: None, limit_by: [], offset: None, fetch: None, locks: [], for_clause: None, settings: None, format_clause: None }, options: None, cluster_by: [], comment: None, with_no_schema_binding: false, if_not_exists: false, temporary: false, to: None }])
right: Err(ParserError("Expected: a data type name, found: ,"))
stack backtrace:
0: rust_begin_unwind
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/std/src/panicking.rs:652:5
1: core::panicking::panic_fmt
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/panicking.rs:72:14
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/panicking.rs:363:5
4: sqlparser::test_utils::TestedDialects::one_of_identical_results::{{closure}}
at ./src/test_utils.rs:77:21
5: core::iter::adapters::map::map_fold::{{closure}}
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/iter/adapters/map.rs:89:21
6: as core::iter::traits::iterator::Iterator>::fold
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/slice/iter/macros.rs:230:27
7: as core::iter::traits::iterator::Iterator>::fold
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/iter/adapters/map.rs:129:9
8: sqlparser::test_utils::TestedDialects::one_of_identical_results
at ./src/test_utils.rs:74:9
9: sqlparser::test_utils::TestedDialects::parse_sql_statements
at ./src/test_utils.rs:101:9
10: sqlparser::test_utils::TestedDialects::one_statement_parses_to
at ./src/test_utils.rs:132:30
11: sqlparser::test_utils::TestedDialects::verified_stmt
at ./src/test_utils.rs:161:9
12: sqlparser_common::parse_create_view_with_columns
at ./tests/sqlparser_common.rs:6799:11
13: sqlparser_common::parse_create_view_with_columns::{{closure}}
at ./tests/sqlparser_common.rs:6796:36
14: core::ops::function::FnOnce::call_once
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/ops/function.rs:250:5
15: core::ops::function::FnOnce::call_once
at /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/ops/function.rs:250:5
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Run the parse_create_view_with_columns test in tests/sqlparser_common.rs and inspect the dialect comparison in src/test_utils.rs. Trace why ClickHouseDialect returns an error while DatabricksDialect returns a parsed CreateView; done means the test produces identical parse results for both dialects.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
rust, sql
Ambito
databases
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.