Issue 1:
Release 5.4.0

Hi community,

After last release, we have received a lot of feedback from users and developers. Now we plan to release the ShardingSphere 5.4.0 version these days, which has made a lot of optimization and improvement for these feedback.

Please refer to this release notes to confirm whether it contains the features you expect. If I missed anything, please remind me ASAP. If there are any suggestions, please feel free to tell us.

Release Notes

API Change

Change sharding broadcast tables to global broadcast tables

JDBC: Remove exclamation mark (!) for global rules

DistSQL: Simplify keywords ASSISTED_QUERY, LIKE_QUERY in Encrypt DistSQL

DistSQL: Optimize SQL_PARSER rule syntax

Adjust encryption yaml API to distinguish between encrypt, like, and assisted query configurations

Refactor read/write splitting api

Remove the global props proxy-instance-type configuration item

Remove plain column and queryWithCipherColumn configuration in encrypt feature

Proxy: Remove property proxy-backend-executor-suitable

Proxy: Remove property proxy-mysql-default-version

Sharding: Merge ShardingCacheRule into ShardingRule

Bug Fix

Scaling: Fix pipeline job failure status persistence and usage

Scaling: Fix CDC DELETE event Record.beforeList is null

Scaling: Fix openGauss mppdb decoding plugin single quote issue

Support union statement single route SQL execution in Sharding scenario

Table data duplication when broadcast table left join sharding table

Fix case sensitive issue when loading schema meta data with H2 database

Fix "object not found" exception when config PostgreSQL/openGauss schema name as database name

Fix SQL rewrite exception when use PostgreSQL/openGauss encrypt like feature

Support null sharding condition pass to sharding algorithm to allow user control null value route

Fix wrong result of check_table_metadata_enabled when execute SHOW DIST VARIABLE

Support BETWEEN AND expression parsing in MySQL Projection

Fix wrong mask result when config same value of from-x and to-y with KEEP_FROM_X_TO_Y

Infra: Fix ClassNotFoundException may occur when missing pgjdbc

Proxy: Fix MySQL packet out of order when client sending pipelining requests

Enhancement

Scaling: CDC supports exporting data by transaction

Scaling: CDC supports all openGauss data types

Scaling: CDC supports replication reconnection

Scaling: Remove DataConsistencyCalculateAlgorithmChooser

Scaling: Improve performance of integer unique key table inventory data splitting

Scaling: Optimize pipeline process configuration default value

Scaling: Optimize memory usage of table metadata

Scaling: Auto refresh table metadata for migration

Scaling: Compatible with openGauss existing replication slot reuse when database not existing

Scaling: Show data consistency check status result should be empty when it's not completed

Scaling: Enable concurrent CRC32 match on source and target

DistSQL: New syntax REGISTER STORAGE NODE, support for DB instance (MySQL)

DistSQL: Enhanced algorithm properties check

Metadata: Refactor metadata persistence structure

Metadata: Optimize the process of loading single table metadata

Support non-comparable sharding keys such as varbinary to support migration

DistSQL: Add support for transactionalReadQueryStrategy for read/write splitting rule

Support MySQL/PostgreSQL/openGauss system tables empty query

Sharding SQL enhancements

Refactor ShardingSphere Metdata structure

Add transaction privilege check

Support MySQL LOAD DATA and LOAD XML statement with single table or broadcast table

Improve the parsing support of high-priority SQL statements in the test results of the MySQL test program

Remove the TransactionTypeHolder and only create the current transaction manager

Adds table existence metadata check for INSERT, DELETE, UPDATE and SELECT statements

Oracle dialect parser now supports Chinese comma

Support query of encrypt column in projection subquery when use encrypt feature

Proxy: Frontend supports SSL/TLS

Driver: Implement batch execution for ShardingSphereStatement

Proxy: Support Flush message for PostgreSQL/openGauss Proxy

Proxy: Support data type bit, bool for PostgreSQL Proxy

New Feature

Scaling: CDC supports MySQL and PostgreSQL

Scaling: CDC supports pure incremental mode

Proxy: Support for registering global data sources

DistSQL: New syntax to manage SQL_FEDERATION rule

Proxy: Support Unix Domain Socket

Issue 2:
Bug Report

For English only, other languages will not accept.

Before report a bug, make sure you have:

Searched open and closed GitHub issues.

Read documentation: ShardingSphere Doc.

Please pay attention on issues you submitted, because we maybe need more details.

If no response more than 7 days and we cannot reproduce it on current information, we will close it.

Please answer these questions before submitting your issue. Thanks!

Which version of ShardingSphere did you use?

4.0.0-RC2-SNAPSHOT

Which project did you use? Sharding-JDBC or Sharding-Proxy?

Sharding-JDBC

Expected behavior

Actual behavior

i have clone sourcecode,but in the module of sharding-core-parse-mysql, MySQLParser has import class of org.apache.shardingsphere.core.parse.antlr.autogen.MySQLStatementParser .Then i have search whole project, but i still can't find it. It's anything i do wrong? pls help me

Reason analyze (If you can)

Steps to reproduce the behavior, such as: SQL to execute, sharding rule configuration, when exception occur etc.

Example codes for reproduce this issue (such as a github link).