github apache/shardingsphere 5.4.0

latest releases: 5.5.0, 5.4.1
10 months ago

API Changes

Metadata: 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
Encrypt: Adjust encryption yaml API to distinguish between encrypt, like, and assisted query configurations
Encrypt: Remove plain column and queryWithCipherColumn configuration in encrypt feature
Readwrite-splitting: Refactor read/write splitting api
Proxy: Remove property proxy-instance-type configuration
Proxy: Remove property proxy-backend-executor-suitable
Proxy: Remove property proxy-mysql-default-version
Scaling: Refactor commit rollback streaming to drop streaming
Sharding: Merge ShardingCacheRule into ShardingRule (Experimental)

New Features

DistSQL: New syntax to manage SQL_FEDERATION rule
Proxy: Support Unix Domain Socket

Enhancements

Scaling: CDC supports pure incremental mode
Scaling: CDC supports exporting data by transaction
Scaling: CDC supports MySQL and PostgreSQL
Scaling: CDC supports single table
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: Adjust process configuration default value to reduce resource consumption
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
Scaling: Pipeline job compatible with sharding rule audit strategy
Metadata: Refactor metadata persistence structure
Metadata: Optimize the process of loading single table metadata
Metadata: Support MySQL/PostgreSQL/openGauss system tables empty query
DistSQL: Add support for transactionalReadQueryStrategy for read/write splitting rule
DistSQL: Enhanced algorithm properties check
Transaction: Add privilege check
Transaction: Remove the TransactionTypeHolder and only create the current transaction manager
Parser: Support MySQL LOAD DATA and LOAD XML statement with single table or broadcast table
Parser: Improve the parsing support of high-priority SQL statements in the test results of the MySQL test program
Parser: Oracle dialect parser now supports Chinese comma
Encrypt: Support query of encrypt column in projection subquery when use encrypt feature
Kernel: Adds table existence metadata check for INSERT, DELETE, UPDATE and SELECT statements
JDBC: Implement batch execution for ShardingSphereStatement
Proxy: Frontend supports SSL/TLS
Proxy: Support Flush message for PostgreSQL/openGauss Proxy
Proxy: Support data type bit, bool for PostgreSQL Proxy

Bug Fixes

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
Scaling: Fix execute engine not closed after job stopping
Scaling: Fix stop job before task starting
Metadata: Fix case sensitive issue when loading schema meta data with H2 database
Metadata: Fix "object not found" exception when config PostgreSQL/openGauss schema name as database name
DistSQL: Fix wrong result of check_table_metadata_enabled when execute SHOW DIST VARIABLE
Encrypt: Fix SQL rewrite exception when use PostgreSQL/openGauss encrypt like feature
Sharding: Support null sharding condition pass to sharding algorithm to allow user control null value route
Parser: Support BETWEEN AND expression parsing in MySQL Projection
Mask: 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

Change Log

  1. MILESTONE

Don't miss a new shardingsphere release

NewReleases is sending notifications on new releases.