-
Notifications
You must be signed in to change notification settings - Fork 594
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(parser): fix token location and print sql with cursor on parse error #16959
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Runji Wang <wangrunji0408@163.com>
wangrunji0408
changed the title
fix(parser): fix location in tokenizer
feat(parser): fix token location and print sql with cursor on parse error
May 28, 2024
Signed-off-by: Runji Wang <wangrunji0408@163.com>
wangrunji0408
force-pushed
the
wrj/fix-tokenizer-loc
branch
from
May 28, 2024 07:20
85136f0
to
c07550a
Compare
Signed-off-by: Runji Wang <wangrunji0408@163.com>
wangrunji0408
force-pushed
the
wrj/fix-tokenizer-loc
branch
from
May 28, 2024 08:49
7cb9755
to
1260bf9
Compare
TennyZhuang
approved these changes
May 28, 2024
chenzl25
approved these changes
May 29, 2024
Signed-off-by: Runji Wang <wangrunji0408@163.com>
Signed-off-by: Runji Wang <wangrunji0408@163.com>
Signed-off-by: Runji Wang <wangrunji0408@163.com>
wangrunji0408
added
the
user-facing-changes
Contains changes that are visible to users
label
May 29, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Currently, the location associated with each token is inferred from token length and is not accurate. This PR fixes this problem by inferring location from lower-level chars.
Additionally, this PR appends SQL context to the parse error message.
Note that the cursor is still not accurate. It may be offset one token forward because the error token has been consumed.
Checklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
The error messages of parser have improved. It now prints the SQL context around the error, helping users quickly locate issues.