Uploaded image for project: 'Comdev GSOC'
  1. Comdev GSOC
  2. GSOC-216

Apache ShardingSphere: Solve unsupported Postgres sql about alter statement for ShardingSphere Parser

    XMLWordPrintableJSON

Details

    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
      Github: https://github.com/apache/shardingsphere

       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 the unsupported postgres sql about alter in this file . * 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. *
      You may need to try to get why it's not supported.(antlr4 grammar? or not implement visit method) You can use antlr4 plugins to help you to analyze. You may need to visit an official doc to check the grammar.

      Notice, these issues can be a good example.
      support alter foreign table for pg/og
      support alter materialized view for pg/og.

      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

      Mentor

      Trista Pan, PMC of Apache ShardingSphere, https://tristazero.github.io

      Zhengqiang Duan, Committer of ApacheShardingSphere, https://github.com/strongduanmu

      Attachments

        Activity

          People

            Unassigned Unassigned
            panjuan Juan Pan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: