Regression: Decreased tolerance to column names matching SQL keywords
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 52/100
Direzione di ricerca
Inizia riproducendo la query segnalata con GenericDialect e AnsiDialect nelle versioni 0.57.0 e 0.58.0, quindi confronta il comportamento del parser in corrispondenza della colonna offset e della clausola FROM. Traccia i punti di ingresso del parser raggiunti da questo esempio e aggiungi un regression test che copra la query che fallisce; il lavoro è completato quando la query viene interpretata in modo coerente senza rompere le varianti funzionanti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Related to: https://github.com/apache/datafusion/issues/17802
Between versions 0.57.0 and 0.58.0 there appears to be a regression that decreased parser tolerance to column names that collide with SQL keywords.
Example:
use sqlparser::dialect::GenericDialect;
use sqlparser::parser::Parser;
fn main() {
let dialect = GenericDialect {}; // or AnsiDialect
let sql = r#"
SELECT
'a' as a,
offset
FROM my_table
"#;
let ast = Parser::parse_sql(&dialect, sql).unwrap();
println!("AST: {:#?}", ast);
}
This works on version 0.57.0, but fails on 0.58.0 with error:
ParserError("Expected: end of statement, found: my_table at Line: 5, Column: 14")
These queries work fine, which adds some confusing inconsistency into the mix:
SELECT
offset
FROM my_table
SELECT
offset,
'a' as a
FROM my_table
- Lingua principale
- Rust
- Stelle
- 3.5k
- Fork
- 774
- Merge medio
- 3g 12h
- PR unite (30g)
- 30
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/datafusion-sqlparser-rs
-
Difficoltà 2/5 1-2 giorni Idoneità per principianti 72/100
apache/datafusion-sqlparser-rs#2495 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datafusion-sqlparser-rs#2461 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
apache/datafusion-sqlparser-rs#2407 ·
-
Add SQL/PGQ keywords Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
apache/datafusion-sqlparser-rs#2393 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
apache/datafusion-sqlparser-rs#2390 · 1 commento ·
Tutte le issue di apache/datafusion-sqlparser-rs
Issue simili
-
Browser (wasm) relay client cannot connect to relays whose URL has a trailing-dot FQDN hostname Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
n0-computer/iroh#4550 ·
-
impl detach for native Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
paritytech/zombienet-sdk#591 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
farion1231/cc-switch#7638 · 1 commento ·
-
onnx-ir re-exports ModelProto and GraphProto but not NodeProto, AttributeProto and AttributeType Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100