github apache/shardingsphere 5.5.3

one day ago

Release 5.5.3

CVE

  1. Fix CVE-2025-55163, CVE-2025-58056, CVE-2025-58057 #36758
  2. Fix CVE-2025-48924 #36085
  3. Fix CVE-2024-7254 #36153
  4. Fix CVE-2015-5237, CVE-2024-7254, CVE-2022-3171, CVE-2021-22569, CVE-2021-22570 #37888
  5. Fix CVE-2024-12798, CVE-2024-12801, CVE-2025-11226 #37936
  6. Fix CVE-2023-39017 #38039
  7. Fix CVE-2024-22399, CVE-2021-32824, CVE-2025-5222, CVE-2016-1000027 #38040
  8. Fix CVE-2023-2976, CVE-2024-29131, CVE-2025-27821 #38042

Metadata Storage Changes

  1. Remove default_strategies prefix on sharding rule metadata persist - #34664

API Changes

  1. Remove SQL formatting feature - #35390
  2. Remove logging rule feature - #35458
  3. Remove configuration property key system-log-level - #35493
  4. Change ShardingSphere SQL log topic from ShardingSphere-SQL to org.apache.shardingsphere.sql - #37022
  5. Add temporary config key instance-connection-enabled - #37694
  6. Add property config key proxy-frontend-connection-idle-timeout - #38045

New Features

  1. Add ShardingSphere BOM - #36866
  2. Decouple feature modules as pluggable - #36086
  3. Decouple database types as pluggable - #35346
  4. Decouple registry center types as pluggable - #36087
  5. Proxy: Support Firebird Proxy - #35937
  6. JDBC: Support ZooKeeper and ETCD URL format - #37037
  7. Proxy: Auto close idle frontend connection for Proxy - #38045

Enhancements

  1. Build: Support compiling and using ShardingSphere under OpenJDK 24 and 25 - #36688
  2. Metadata: Support IPv6 for JDBC connection URL - #35289
  3. Metadata: Support to load partition tables for PostgreSQL - #34346
  4. Metadata: Support for connecting to Presto's Memory Connector - #34432
  5. Kernel: Add LocalDate data type support - #37053
  6. SQL Parser: Support to parse stored procedure syntax for MySQL - #36690
  7. SQL Parser: Support to parse more SQL statements for MySQL - #36689
  8. SQL Parser: Support to parse more SQL statements for SQLServer - #36695
  9. SQL Parser: Support to parse more SQL statements for Oracle - #36696
  10. SQL Parser: Support to parse more SQL statements for Hive - #36694 #37074
  11. SQL Parser: Support to parse CREATE MATERIALIZED VIEW for Doris - #31499
  12. SQL Parser: Support to parse CREATE FUNCTION with $$ symbol for PostgreSQL and openGauss - #35947
  13. SQL Parser: Support Oracle SQL parser correctly extract REGEXP_SUBSTR parameters - #37924
  14. SQL Parser: Fix escape '' in SQL causing DialectSQLParsingException - #37943
  15. SQL Parser: Fix error parsing \l command SQL statement when front-end protocol is og - #37953
  16. SQL Parser: Fix SQLParsingException when using reserved word order in ORDER BY clause - #37958
  17. SQL Parser: Fix parsing error for SQLServer session SET QUOTED_IDENTIFIER and SET TEXTSIZE statements - #38005
  18. SQL Parser: Support '2'::int statement in PostgreSQL and openGauss - #37962
  19. SQL Parser: Support range type constructor functions in PostgreSQL without quotes - #37994
  20. SQL Parser: Support parsing MySQL stored procedure syntax- #38017
  21. SQL Binder: Support to bind more SQL statements - #36697
  22. SQL Binder: Add ALTER TABLE metadata check - #35877
  23. SQL Binder: Support Grant statement SQL bind - #36207
  24. SQL Router: Add SELECT with UNION ALL routing to multi data sources check - #35037
  25. SQL Router: Improve support for executing tableless SQL with single data source - #35659
  26. SQL Router: Add max-union-size-per-datasource property to batch UNION ALL rewrite per data source and keep parallel execution - #37405
  27. DistSQL: Add job sharding nodes info to the query results of SHOW MIGRATION LIST - #35053
  28. DistSQL: Add DistSQL for query storage units which used in single rule - #35131
  29. Proxy: Implement write bool binary data type for PostgreSQL protocol - #35831
  30. Proxy: Add authority check on SQL SHOW CREATE DATABASE for MySQL - #36862
  31. Proxy: MySQLTextResultSetRowPacket and MySQLDateBinaryProtocolValue to support LocalDateTime and LocalTime when value contains scale - #37881
  32. Sharding: Using cache to avoid memory overflow from inline expression parsing - #22196
  33. Sharding: Add digital suffix check with binding table names - #35293
  34. Encrypt: Use EncryptDerivedColumnSuffix to enhance encrypt table subquery rewrite logic - #34829
  35. Encrypt: Add quotes to encrypt rewrite derived columns - #34950
  36. Encrypt: Support NOT LIKE operator in encryption feature - #35984
  37. Readwrite-splitting: Update transactional read query strategy default type as PRIMARY - #36477
  38. Pipeline: Improve pipeline job progress incremental latestActiveTimeMillis persistence - #34655
  39. Pipeline: Improve heterogeneous databases migration - #35424
  40. Pipeline: Improve DATA_MATCH data consistency check to use range streaming query - #35740
  41. Pipeline: Add streaming-range-type property and LARGE impl in DATA_MATCH consistency check on MySQL sharding table for better performance - #35786
  42. Pipeline: Improve migration consistency check to reflect storage unit maxPoolSize dynamically - #36507
  43. Pipeline: Improve "show migration check status" inventory_finished_percentage column inaccurate result - #36509
  44. Pipeline: Compatible with COMPLEX_INLINE allow-range-query-with-inline-sharding - #36524
  45. Pipeline: Support pipeline job realtime reflection on proxy global properties after restarting - #36749
  46. Pipeline: InventoryDumper reuse table inventory calculator for better function and performance - #36830
  47. Pipeline: Improve "alter transmission rule": verify STREAM_CHANNEL TYPE NAME - #36864
  48. Pipeline: Support multi-columns unique key first integer column splitting - #36935
  49. Pipeline: Support unique key first integer column exact splitting - #37517
  50. Pipeline: Support unique key first integer column possible null value - #37522
  51. Pipeline: Support unique key first integer column exact or estimated splitting based on data sparseness - #37542
  52. Pipeline: Support unique key first big integer column splitting - #37574
  53. Pipeline: Support unique key first string column exact splitting - #37543
  54. Pipeline: Support unique key first binary (e.g. MySQL VARBINARY) column exact splitting - #38041
  55. Pipeline: Support multi-columns unique key non-first column nullable - #37647
  56. Encrypt: Support handling show create view result decoration in encrypt - #37299
  57. JDBC: Enhance ResultSetUtils to support flexible string date/time conversions - 37424

Bug Fixes

  1. Kernel: Fix not return generate key when set null in INSERT statement - 35783
  2. Kernel: Add AllowNotUseDatabaseSQLStatementAttribute to support some mysql dal statement execute without use database - #37033
  3. Metadata: Fix the exception to rename schema name when executing ALTER SCHEMA - #34465
  4. SQL Parser: Support multiple column names with pivot and unpivot clause for Oracle - #35586
  5. SQL Parser: Fix set OnDuplicateKeyColumnsSegment on INSERT for PostgreSQL - #34425
  6. SQL Parser: Fix SQL parser error when SQL contains implicit concat expression for MySQL - #34660
  7. SQL Parser: Fix SQL parser error when SQL contains subquery with alias for Oracle - #35239
  8. SQL Parser: Fix multiple SQLs split error when comma contained - #31609
  9. SQL Parser: Fix wrong parameter count parse when function contains placeholder #38019
  10. SQL Binder: Fix unable to find the outer table in the NotExpressionBinder - 36135
  11. SQL Binder: Fix unable to find the outer table in the ExistsSubqueryExpressionBinder - #36068
  12. SQL Binder: Fix column bind exception caused by oracle XMLELEMENT function first parameter without quote - #36963
  13. SQL Binder: Fix correlated subquery in HAVING cannot reference outer query column - #37872
  14. Transaction: Fix conflicting dependencies of BASE transaction integration module - #35142
  15. Transaction: Alleviate connection leaks caused by SEATA client throwing exceptions - #34463
  16. Transaction: Fix XA data source enlist failure caused connection leaks - 37593
  17. SQL Federation: Fix Operation not allowed after ResultSet closed exception when use SQL federation - #35206
  18. DistSQL: Fix duplicate result when show rules used storage unit with readwrite-splitting rule - #35129
  19. DistSQL: Fix missing comma in ALTER SQL_FEDERATION RULE - #35523
  20. DistSQL: Fix load single table with specific schema - #37535
  21. JDBC: Fix some wrong JDBC database metadata retrieve logics - #34959
  22. JDBC: Fix getting database name from SQL statement context - #34960
  23. JDBC: Support set data source properties type with java.time.Duration - #35241
  24. JDBC: Resolve statement manager leaks when creating multiple statements - #35665
  25. JDBC: Fix the issue where cached connections in DriverDatabaseConnectionManager were not released in time - 35834
  26. JDBC: Clear batch generated keys result set when call clearBatch method - 37204
  27. JDBC: Fix Oracle TIMESTAMP WITH TIME ZONE ORDER BY exception - #37181
  28. JDBC: Fix generated keys retrieval for PostgreSQL SINGLE tables - #38024
  29. Proxy: Fix SHOW PROCESSLIST not wait for all nodes - #35348
  30. Proxy: Fix NoSuchElementException exception when execute MySQL SHOW VARIABLES without current database - #35550
  31. Proxy: Fix column length for PostgreSQL string binary protocol value - 35840
  32. Proxy: Fix the connection leak caused by rollback failure in Proxy - 35867
  33. Proxy: Fix the behavior difference of select built-in function names with spaces -#36537
  34. Proxy: Fix MySQL text protocol datetime fractional seconds output - #37410
  35. Proxy: Fix IndexOutOfBoundsException for MySQL no-FROM multi-projection SELECT routed to admin path - #37391
  36. Proxy: Fix MySQL binary protocol datetime/time fractional seconds precision - #37294
  37. Proxy: Fix PostgreSQL boolean text output to return t/f as per protocol - #37184
  38. Proxy: Fix PostgreSQL text protocol bytea output to use hex encoding and avoid truncation - #37772
  39. Proxy: Fix MySQL prepared statement sharding failure with interpolateParams=false when MYSQL_TYPE_STRING is used for character sharding columns - #37993
  40. Proxy: Handle byte[] pagination parameters in MySQL prepared statements (LIMIT ?, LIMIT ?, ?) - #38057
  41. Proxy: Fix command type error when use openGauss driver to execute statements in transaction - 37749
  42. Mode: Fix issue of drop schema can not work on standalone mode - #34470
  43. Sharding: Fix mod sharding algorithm judgement -#36386
  44. Sharding: Fix check inline sharding algorithms in table rules - #36999
  45. Sharding: Fix wrong sharding condition merge when sharding column in case-sensitive - #37389
  46. Sharding: Fix wrong merge sharding condition logic caused by different type sharding value - #37528
  47. Sharding: Prevent SELECT DISTINCT rewrite from losing global de-duplication across shards - #37857
  48. Encrypt: Resolve rewrite issue in nested concat function - #35815
  49. Pipeline: Recover value of migration incremental importer batch size - #34670
  50. Pipeline: Fix InventoryDumper first time dump SQL without ORDER BY on multiple columns unique key table - #34736
  51. Pipeline: Fix MySQL JDBC query properties extension when SSL is required on server - #36581
  52. Pipeline: Fix migration might skip some records on big table after job restarting - #36878
  53. Pipeline: Fix unsigned number column value type inconsistent in inventory and incremental - #37280
  54. Pipeline: Fix PostgreSQL migration create table SQL generation failure caused by locale-formatted sequence values - #28360
  55. Pipeline: MySQLBinlogClient compatible with async exception - #37631
  56. Pipeline: Fix SHOW MIGRATION RULE always display default values when ALTER MIGRATION RULE without STREAM_CHANNEL - #37737
  57. DistSQL: Eliminate the concurrency safety risks of DistSQL executors. - #38097

Change Logs

  1. MILESTONE

Don't miss a new shardingsphere release

NewReleases is sending notifications on new releases.