LucaCappelletti94 commented on PR #2418:
URL: 
https://github.com/apache/datafusion-sqlparser-rs/pull/2418#issuecomment-5844482422

   I have asked twice for this to be fuzzed, [on August 
4](https://github.com/apache/datafusion-sqlparser-rs/pull/2418#discussion_r3709927676)
 and on [September 
3](https://github.com/apache/datafusion-sqlparser-rs/pull/2418#pullrequestreview-5103686516).
 Neither request was followed. After three iterations the PR still breaks on 
inputs a round-trip fuzzer finds in seconds. Each of these fails at `b1eb8c5`.
   
   - `ms().verified_stmt(r#"SELECT ["a]]b"]"#)` renders `SELECT ["a]b"]`, which 
does not parse. [This is the repro from the last review, still open. `SELECT 
["]]"]` fails the same 
way.](https://github.com/apache/datafusion-sqlparser-rs/pull/2418#discussion_r3925979382)
   - The same test asserts SQLite round-trips `[a]]b]`, but SQLite has no `]]` 
escape. `sqlite3` rejects `select 1 as [a]]b];` with `unrecognized token: "]"`.
   - `redshift().verified_stmt(r#"SELECT 1 AS ["a""b"] FROM a"#)` renders 
`["a"b"]`, which does not parse. The verbatim branch in `fmt_ident` emits it, 
and the fix you described yourself (store Redshift `["foo"]` as `foo` quoted 
with `"`) removes that branch and fixes both this and the first bullet.
   
   Run `fuzz_parse_roundtrip` from `docs/fuzzing.md`, seeded with bracket 
identifiers, and push again only when it runs clean. I will not review another 
iteration that has not been fuzzed and **expecially that has not addressed the 
bugs reported at the previous review round**. Hunting these cases down is the 
author's job.
   
   I am marking this PR as draft as it is clearly not ready for review at this 
time.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to