apache / apache/datafusion-sqlparser-rs
Misleading error message
- Vorherrschende Sprache
- Rust
- Sterne
- 3.5k
- Forks
- 772
- Ø Merge
- 4 T. 9 Std.
- Gemergte PRs (30 T.)
- 17
Beschreibung
```sql
select
1
from (
select
f(interval '1 hour')
from t
where time > 2023-01-03T00:00:00Z
)
```
which misses the quotes around `2023-01-03T00:00:00Z` gives:
```text
Error during parsing: ParserError("Expected ), found: '1 hour'")
```
but should probably point somewhere at `time > 2023-01-03T00:00:00Z`.
Note that the reproducer requires the outer select query, otherwise we get an actually useful error:
```text
Error during parsing: ParserError("Expected end of statement, found: T00")
```
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne damit, den SQL-Reproduzierer auszuführen, und vergleiche den Parserfehler der verschachtelten Abfrage mit dem nützlichen Fehler der einfacheren Abfrage. Verfolge den Parser-Einstiegspunkt für den verschachtelten SELECT und den ungültigen timestamp-Vergleich; abgeschlossen ist die Arbeit, wenn die gemeldete Position die fehlenden Anführungszeichen identifiziert, ohne die einfachere Diagnose zu beeinträchtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust, sql
- Bereich
- compilers
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 50/100