tuichenchuxin opened a new issue #15740:
URL: https://github.com/apache/shardingsphere/issues/15740


   Hi community,
   
   This issue is for [OpenForce 
2022](https://github.com/apache/shardingsphere/discussions/12683#discussioncomment-2139441)
   
   ## Background
   ShardingSphere parser engine helps users parse a SQL to get the AST 
(Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). 
At present, this parser engine can handle SQLs for `MySQL`, `PostgreSQL`, 
`SQLServer`, `openGauss` and `Oracle`, which means we have to understand 
different database dialect SQLs.
   More details: 
   
https://shardingsphere.apache.org/document/current/en/reference/sharding/parse/
   
   ## Task
   This issue is to solve some of the unsupported postgres sqls  in [this 
file](https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml)
 .
   
   - [ ] DROP ACCESS METHOD
   
   You can learn more details about this SQL 
[here](https://www.postgresql.org/docs/current/sql-commands.html).
   - You may need to try to get why it's not supported.(antlr4 grammar? or not 
implement visit method) You can use [antlr4 
plugins](https://plugins.jetbrains.com/plugin/7358-antlr-v4) to help you to 
analyze. You may need to visit [an official 
doc](https://www.postgresql.org/docs/current/sql-commands.html) to check the 
grammar.
   - After you fix it, remember to add a new corresponding SQL case in [SQL 
Cases](https://github.com/apache/shardingsphere/tree/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/supported)
 and expected parsed result in [Expected Statment 
XML](https://github.com/apache/shardingsphere/tree/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/case).
   - Run 
[SQLParserParameterizedTest](https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/engine/SQLParserParameterizedTest.java)
 and 
[UnsupportedSQLParserParameterizedTest](https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/engine/UnsupportedSQLParserParameterizedTest.java)
 to make sure no exceptions.
   Notice, these issues can be a good example.
   [support alter foreign table for pg/og 
](https://github.com/apache/shardingsphere/pull/14944)
   [support alter materialized view for 
pg/og.](https://github.com/apache/shardingsphere/pull/15331)
   
   ## Relevant Skills
   1. Master JAVA language
   2. Have a basic understanding of Antlr g4 file
   3. Be familiar with Postgres SQLs
   ## Targets files
   1. Postgres SQLs g4 file: 
https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/PostgreSQLStatement.g4


-- 
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]


Reply via email to