Skip to content
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

Improve parser compatibility #11486

Closed
57 of 58 tasks
zier-one opened this issue Jul 29, 2019 · 3 comments
Closed
57 of 58 tasks

Improve parser compatibility #11486

zier-one opened this issue Jul 29, 2019 · 3 comments
Assignees
Labels
component/parser good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. type/compatibility type/enhancement The issue or PR belongs to an enhancement.

Comments

@zier-one
Copy link
Contributor

zier-one commented Jul 29, 2019

As MySQL evolves constantly, there are always new SQL syntaxes that TiDB doesn’t support. To support a new SQL function in TiDB is a careful decision, and may take a long time. For better compatibility and user experience, it’s our intention that TiDB can parse and ignore the unsupported functions while only executing the supported part of SQL. Therefore, we need to parse as many SQL syntaxes as possible in the TiDB Parser to make it behave more closely to the parser in MySQL.

To find out the differences between MySQL and TiDB parser, we generate SQL cases randomly based on the yacc file of MySQL. These SQL cases are later executed respectively in TiDB parser and MySQL server to screen out the incompatible ones that cause different behaviors between TiDB parser and MySQL.

The incompatible test cases will be grouped by behaviors - those with similar behavior form a subtask, with an issue created correspondingly. As contributors, you can learn about the subtask based on the comments below the issue and claim accordingly. After finishing one or more subtasks, submit them individually or collectively as pull requests (PRs).

See: 中文教程

Sub tasks list:

@zier-one zier-one added the type/enhancement The issue or PR belongs to an enhancement. label Jul 29, 2019
@zier-one zier-one added component/parser type/compatibility good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. labels Jul 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/parser good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. type/compatibility type/enhancement The issue or PR belongs to an enhancement.
Projects
None yet
Development

No branches or pull requests

3 participants