[
https://issues.apache.org/jira/browse/COMDEV-438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Juan Pan updated COMDEV-438:
----------------------------
Description:
*Apache ShardingSphere*
Apache ShardingSphere is positioned as a Database Plus, and aims at building a
standard layer and ecosystem above heterogeneous databases. It focuses on how
to reuse existing databases and their respective upper layer, rather than
creating a new database. The goal is to minimize or eliminate the challenges
caused by underlying databases fragmentation.
{*}Page{*}:
[https://shardingsphere.apache.org|https://shardingsphere.apache.org/]
{*}Github{*}: [https://github.com/apache/shardingsphere]
h3. 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/]
h3. Task
This issue is to solve the unsupported postgres sql about alter in [this
file|https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml]
. * ALTER OPERATOR
* ALTER POLICY
* ALTER PUBLICATION
* ALTER ROUTINE
* ALTER RULE
* ALTER SCHEMA
* ALTER SEQUENCE
* ALTER SERVER
* ALTER STATISTICS
* ALTER SUBSCRIPTION
* ALTER TABLE
* ALTER TEXT SEARCH
* ALTER TRIGGER
* ALTER TYPE
* ALTER VIEW
You can *learn more*
[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 the 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]
h3. Relevant Skills
1. Master JAVA language
2. Have a basic understanding of Antlr g4 file
3. Be familiar with Postgres SQLs
h3. 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]
h3. Mentor
Trista Pan, PMC of Apache ShardingSphere,
[https://tristazero.github.io|https://tristazero.github.io/]
Zhengqiang Duan, Committer of ApacheShardingSphere,
[https://github.com/strongduanmu]
was:
*Apache ShardingSphere*
Apache ShardingSphere is a distributed database middleware ecosystem, including
2 independent products, ShardingSphere JDBC and ShardingSphere Proxy presently.
They all provide functions of data sharding, distributed transaction, and
database orchestration.
{*}Page{*}:
[https://shardingsphere.apache.org|https://shardingsphere.apache.org/]
{*}Github{*}: [https://github.com/apache/shardingsphere]
h3. 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/]
h3. Task
This issue is to solve the unsupported postgres sql about alter in [this
file|https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml]
. * ALTER OPERATOR
* ALTER POLICY
* ALTER PUBLICATION
* ALTER ROUTINE
* ALTER RULE
* ALTER SCHEMA
* ALTER SEQUENCE
* ALTER SERVER
* ALTER STATISTICS
* ALTER SUBSCRIPTION
* ALTER TABLE
* ALTER TEXT SEARCH
* ALTER TRIGGER
* ALTER TYPE
* ALTER VIEW
You can *learn more*
[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 the 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]
h3. Relevant Skills
1. Master JAVA language
2. Have a basic understanding of Antlr g4 file
3. Be familiar with Postgres SQLs
h3. 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]
h3. Mentor
Trista Pan, PMC of Apache ShardingSphere, https://tristazero.github.io
Zhengqiang Duan, Committer of ApacheShardingSphere,
https://github.com/strongduanmu
> Apache ShardingSphere: Solve unsupported Postgres sql about alter statement
> for ShardingSphere Parser
> -----------------------------------------------------------------------------------------------------
>
> Key: COMDEV-438
> URL: https://issues.apache.org/jira/browse/COMDEV-438
> Project: Community Development
> Issue Type: Improvement
> Components: GSoC/Mentoring ideas
> Reporter: Juan Pan
> Priority: Major
> Labels: ShardingSphere, gsoc2022, mentor, part-time
>
> *Apache ShardingSphere*
> Apache ShardingSphere is positioned as a Database Plus, and aims at building
> a standard layer and ecosystem above heterogeneous databases. It focuses on
> how to reuse existing databases and their respective upper layer, rather than
> creating a new database. The goal is to minimize or eliminate the challenges
> caused by underlying databases fragmentation.
> {*}Page{*}:
> [https://shardingsphere.apache.org|https://shardingsphere.apache.org/]
> {*}Github{*}: [https://github.com/apache/shardingsphere]
> h3. 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/]
> h3. Task
> This issue is to solve the unsupported postgres sql about alter in [this
> file|https://github.com/apache/shardingsphere/blob/master/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml]
> . * ALTER OPERATOR
> * ALTER POLICY
> * ALTER PUBLICATION
> * ALTER ROUTINE
> * ALTER RULE
> * ALTER SCHEMA
> * ALTER SEQUENCE
> * ALTER SERVER
> * ALTER STATISTICS
> * ALTER SUBSCRIPTION
> * ALTER TABLE
> * ALTER TEXT SEARCH
> * ALTER TRIGGER
> * ALTER TYPE
> * ALTER VIEW
> You can *learn more*
> [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 the 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]
> h3. Relevant Skills
> 1. Master JAVA language
> 2. Have a basic understanding of Antlr g4 file
> 3. Be familiar with Postgres SQLs
> h3. 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]
> h3. Mentor
> Trista Pan, PMC of Apache ShardingSphere,
> [https://tristazero.github.io|https://tristazero.github.io/]
> Zhengqiang Duan, Committer of ApacheShardingSphere,
> [https://github.com/strongduanmu]
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]