Releases
5.2.0
New Feature
Support SQL audit for sharding feature
Support MySQL show processlist and kill process list id feature
Scaling: Add dedicated DistSQL for data migration
Scaling: Basic support migrate data to heterogeneous database
DistSQL: New syntax CREATE MIGRATION PROCESS CONFIGURATION
DistSQL: New syntax ALTER MIGRATION PROCESS CONFIGURATION
DistSQL: New syntax SHOW MIGRATION PROCESS CONFIGURATION
DistSQL: New syntax ADD MIGRATION SOURCE RESOURCE
DistSQL: New syntax SHOW SQL_TRANSLATOR RULE
DistSQL: New syntax CREATE SHARDING AUDITOR
DistSQL: New syntax ALTER SHARDING AUDITOR
DistSQL: New syntax SHOW SHARDING AUDIT ALGORITHMS
Enhancement
Support column visible feature for MySQL, Oracle, SQLServer and H2
Support cartesian product configuration for read write splitting
Support spring namespace and spring boot usage for sql translator
Support JSR-310 Year and Month in IntervalShardingAlgorithm
Support broadcast table update/delete limit statement
Support create index on table(column) statement rewrite when config encrypt
Support openGauss cursor, fetch, move, close statement for sharding, readwrite-splitting
Support encrypt column rewrite when execute column is null in predicate
Support encrypt show create table return logic columns
Support create table with index statement rewrite when config encrypt
Support PostgreSQL create operator statement parse
Support PostgreSQL create materialized view statement parse
Support PostgreSQL nested comments parse
Support PostgreSQL alter subscription statement parse
Support PostgreSQL create group statement parse
Support PostgreSQL alter statictics statement parse
Support PostgreSQL create foreign table statement parse
Support PostgreSQL alter server statement parse
Support PostgreSQL create foreign data wrapper statement parse
Support PostgreSQL create event trigger statement parse
Support PostgreSQL security label statement parse
Support PostgreSQL reindex statement parse
Support PostgreSQL reassign owned statement and refresh materialized view statement parse
Support PostgreSQL prepare transaction statement parse
Support PostgreSQL create collation statement parse
Support PostgreSQL lock statement parse
Support PostgreSQL alter rule statement parse
Support PostgreSQL notify statement parse
Support PostgreSQL unlisten statement parse
Support Oracle alter function and alter hierarchy statement parse
Support Oracle alter pluggable database statement parse
Support Oracle alter materialized view log statement parse
Support Oracle alter diskgroup statement parse
Support Oracle alter operator statement parse
Support oracle alter cluster statement parse
Support oracle alter audit policy statement parse
Support Oracle alter index type statement parse
Support Oracle lock table statement parse
Support Oracle alter java statement parse
Support Oracle inline constraint statement parse
Support openGauss geometric operator statement parse
Optimize MySQL visible/invisible parse of create/alter table statements
Support scope of variable prefixed with @@ in MySQL SET statement parse
Support MySQL create procedure with create view parse
Support column segments parse in create index on table statement
Support openGauss cursor, fetch, move, close statement for sharding, readwrite-splitting
Support encrypt column rewrite when execute column is null in predicate
Support encrypt show create table return logic columns
Support create table with index statement rewrite when config encrypt
Support parsing ALTER LOCKDOWN PROFILE in Oracle
Support parsing ALTER MATERIALIZED VIEW in Oracle
Support parsing ALTER MATERIALIZED ZONEMAP in Oracle
Support parsing ALTER LIBRARY in Oracle
Support parsing ALTER INMEMORY JOIN GROUP in Oracle
Support parsing DROP OPERATOR in Oracle
Support parsing DROP RESTORE POINT in Oracle
Support parsing CREATE RESTORE POINT in Oracle
Support parsing DROP INMEMORY JOIN GROUP in Oracle
Support parsing create_bit_xor_table in MySQL
Support parsing MySQL DO statement
Support parsing DropServer in openGauss
Support parsing CREATE AGGREGATE In openGauss
Support parsing ALTER ROUTINE in PostgreSQL
Add PostgreSQL Create Cast Statement
Add PostgreSQL Create Aggregate Statement
Support fetch/move/close cursor statement in PostgreSQL
Support Parsing ALTER PUBLICATION in PostgreSQL
Add PostgreSQL Create Access Method Statement
Support Parsing ALTER POLICY in PostgreSQL
Support parsing ALTER OPERATOR in PostgreSQL
Add PostgreSQL Copy Statement
Add PostgreSQL Comment Statement
Support listen statement in postgreSQL
Support DECLARE cursor statement
Add default serverConfig in helm charts
Assemble openGauss JDBC Driver into Proxy distribution
ShardingSphere-Proxy listen on specified IP addresses
Support COM_STMT_SEND_LONG_DATA in MySQL Proxy
SELECT VERSION() support alias in MySQL Proxy
Fix openGauss Proxy could not be connected if no resource defined
Support using JRE defined in JAVA_HOME in ShardingSphere-Proxy's startup script
Avoid client blocked when OOM occurred in ShardingSphere-Proxy
Support using c3p0 in ShardingSphere-JDBC
Support SET NAMES with value quoted by double-quote
Connection.prepareStatement with columns arguments is available in ShardingSphere-JDBC
Scaling: Improve MySQL connect and reconnect
Scaling: Fix MySQL json column may cause leak at incremental task
Scaling: Add permission check for PostgreSQL data sources
Scaling: Incremental migration support for MySQL MGR mode
Scaling: Improve job progress persistence
Scaling: Start job DistSQL execute and return synchronously
Scaling: Inventory migration support table has primary key and unique key
Scaling: Close unerlying ElasticJob when stopping job
Scaling: Improve logical replication slot name generation for PostgreSQL and openGauss
Scaling: Make query DistSQL could be executed when no database selected
DistSQL: Add worker_id to the result set of SHOW INSTANCE LIST
& SHOW INSTANCE INFO
DistSQL: Improve the result of EXPORT DATABASE CONFIG
DistSQL: Support more databases for FORMAT SQL
DistSQL: Optimize the execution logic of CREATE TRAFFIC RULE
DistSQL: Add paramter writeDataSourceQueryEnabled
for RDL READWRITE_SPLITTING RULE.
DistSQL: Support assistEncryptor
for Encrypt RDL
DistSQL: Add sharding algorithm type check when CREATE SHARDING TABLE RULE
Support database discovery to configure multiple groups of high availability under the same logic database
Support ShardingSphere-Proxy to start up under empty logic library
Support for isolating EventBus events by instance
Support the database to detect changes in the master node and restart the detection heartbeat task
Support ShardingSphere-Proxy to generate new worker-id when re-registering in cluster mode
Thrown exception when inserting expression value in shadow column on executing insert
Support distributed transactions across multiple logical databases
Support executing truncate in XA & PostgreSQL
Support alter local transaction rule with DistSQL
Support global transaction manager
Delete support for branch transaction on proxy
Bug Fix
Fix single table metadata refresh error caused by filtering DataSourceContainedRule
Fix parsing exception caused by the null value of MySQL blob type
Fix PostgreSQL/openGauss reset statement parse error
Fix wrong parameter rewrite when use sharding and encrypt
Fix the failed conversion of Month related classes on IntervalShardingAlgorithm
Fix NullPointerException when execute select union statement contains subquery
Fix wrong encrypt rewrite result due to incorrect order of metadata
Fix MySQL trim function parse error
Fix MySQL insert values with _binary parse error
Fix MySQL syntax error cannot be thrown to client
Avoid EventLoop blocked because of closing JDBC resources
Correct server status flags returned by MySQL Proxy
Fix a possible connection leak issue if Proxy client disconnected in transaction
Fixed a possible consistency issue with the statement being executed when the Proxy client is disconnected
Avoid pooled connection polluted by executing SET statements
Make SHOW TABLES FROM work in ShardingSphere-Proxy
Fix PostgreSQL DDL could not be executed by Extended Query
Fix SHOW VARIABLES could not be executed in PostgreSQL Proxy without resource
Fix FileNotFoundException when use ShardingSphere Driver with SpringBoot fatjar
Scaling: Fix the problem that the table contains both primary key and unique index at inventory migration
Scaling: Improve incremental migration, support the latest position in the middle of batch insert event
Scaling: Fix the error caused by null field value in openGauss incremental migration
DistSQL: Fix incorrect strategy name in result of SHOW SHARDING TABLE RULES
DistSQL: Fix current rule config is modified in advance when ALTER SHARDING TABLE RULE
DistSQL: Fix connection leak when ALTER RESOURCE
DistSQL: Fix CREATE TRAFFIC RULE
failed when load balance algorithm is null
Fix that the monitoring heartbeat task was not stopped when the database was discovered and the logical library was deleted
Fix cluster mode ShardingSphere-JDBC load all logic database
Fix worker-id generated by SnowflakeKeyGenerateAlgorithm in cluster mode may exceed the maximum value
Fix DistSQL
adding shadow algorithm exception without shadow data source
Fix cross-database data source confusion caused by same data source name in multiple logical databases
Fix RUL DistSQL execution failure in transaction
Fix begin for PostgreSQL & openGauss
Agent: Fixed the error of null value in contextManager when collecting metric data
API Changes
Remove SQL passthrough to data source feature
Add new assistedQueryEncryptorName and remove QueryAssistedEncryptAlgorithm interface
Refactor readwrite-splitting api to improve user experience
Remove check-duplicate-table-enabled configuration
Remove useless config item show-process-list-enabled configuration
Scaling: Change keyword for part of data migration DistSQL
Scaling: Redesign part of data migration DistSQL
DistSQL: Unify parameter type specification
DistSQL: Split SHOW INSTANCE MODE
to SHOW MODE INFO
and SHOW INSTANCE INFO
DistSQL: Change DROP SCALING jobId
to CLEAN MIGRATION jobId
DistSQL: Remove COUNT INSTANCE RULES
Add database found that high availability supports all the slave libraries to go offline, and the main library undertakes the read traffic configuration
SnowflakeKeyGenerateAlgorithm supports configuring worker-id in standalone mode
Replace sourceDataSourceName
with productionDataSourceName
in Shadow API Configuration
Authority: Remove deprecated native authority provider
Refactor
ShardingSphere metadata refactoring for splitting actual metadata and logical metadata
Use ConnectionContext, QueryContext to remove ThreadLocal in FetchOrderByValueQueuesHolder, TrafficContextHolder, SQLStatementDatabaseHolder and TransactionHolder
Modify the default value of the ShardingSphere-Proxy version in the helm chart
Docker container will exit if ShardingSphere-Proxy failed to startup
Helm Charts in ShardingSphere repository are transferred to sub-project shardingsphere-on-cloud
Scaling: Plenty of refactor for better code reuse
DistSQL: Add a new category named RUL
Refactor the schedule module and split it into cluster schedule and standalone schedule
Remove memory mode, keep standalone mode and cluster mode
Refactoring metadata table loading logic and persistence logic
Refactoring distributed locks to retain the most concise interface design
Refactor : Unify The Creation for Proxy Containers in IT from ENV Modules
Refactor : Unify The Configuration for container created by testcontainer
Change Log
MILESTONE
You can’t perform that action at this time.