RELEASE-NOTES.md
normalize-numeric-int-range - #38327default_strategies prefix on sharding rule metadata persist - #34664system-log-level - #35493ShardingSphere-SQL to org.apache.shardingsphere.sql - #37022instance-connection-enabled - #37694proxy-frontend-connection-idle-timeout - #38045order in ORDER BY clause - #37958SET QUOTED_IDENTIFIER and SET TEXTSIZE statements - #38005max-union-size-per-datasource property to batch UNION ALL rewrite per data source and keep parallel execution - #37405SHOW MIGRATION LIST - #35053SHOW CREATE DATABASE for MySQL - #36862ALTER SQL_FEDERATION RULE - #35523SHOW PROCESSLIST not wait for all nodes - #35348t/f as per protocol - #37184interpolateParams=false when MYSQL_TYPE_STRING is used for character sharding columns - #37993byte[] pagination parameters in MySQL prepared statements (LIMIT ?, LIMIT ?, ?) - #38057hive_conf_list, hive_var_list and sess_var_list for jdbcURL when connecting to HiveServer2 - #33749chDB - #33786DB.*" is not recognized during SELECT privilege verification for MySQL - #34037JDBCRepository improper handling of H2-database in memory mode - #33281BigInteger primary keysystem-log-level, support dynamic change of log level by DistSQL.SQL Hint insteadVARBINARY column type in MySQL binlog parsingAbstractSimplePipelineJob.execute to blockinguseServerPrepStmts=false for pipeline job on MySQLnetTimeoutForStreamingResults for pipeline job on MySQLSKIP_ENCRYPT_REWRITE SQL Hint to SKIP_SQL_REWRITE to support more scenariosEXPLAIN PERFORMANCECREATE SHARDING TABLE RULE supports NONE strategyIndexOutOfBoundsException when execute set variable statement int jdbc adapterPostgreSQLInt2BinaryProtocolValueCREATE SHARDING TABLE RULEALTER SHARDING BINDING TABLE RULESREFRESH TABLE METADATA when there is no resourceCOUNT DATABASE RULESCREATE MIGRATION PROCESS CONFIGURATIONALTER MIGRATION PROCESS CONFIGURATIONSHOW MIGRATION PROCESS CONFIGURATIONADD MIGRATION SOURCE RESOURCESHOW SQL_TRANSLATOR RULECREATE SHARDING AUDITORALTER SHARDING AUDITORSHOW SHARDING AUDIT ALGORITHMSSHOW INSTANCE LIST & SHOW INSTANCE INFOEXPORT DATABASE CONFIGFORMAT SQLCREATE TRAFFIC RULEassistEncryptor for Encrypt RDLCREATE SHARDING TABLE RULESHOW SHARDING TABLE RULESALTER SHARDING TABLE RULEALTER RESOURCECREATE TRAFFIC RULE failed when load balance algorithm is nullDistSQL adding shadow algorithm exception without shadow data sourceSHOW INSTANCE MODE to SHOW MODE INFO and SHOW INSTANCE INFODROP SCALING jobId to CLEAN MIGRATION jobIdCOUNT INSTANCE RULESsourceDataSourceName with productionDataSourceName in Shadow API ConfigurationREFRESH TABLE METADATA supports specifying PostgreSQL's schemaALTER SHARDING TABLE RULE add validation of binding tableSET VARIABLE modification not taking effect in stand-alone and memory modeSHOW INSTANCE LIST display data and actual dataEXPORT SCHEMA CONFIG to EXPORT DATABASE CONFIGIMPORT SCHEMA CONFIG to IMPORT DATABASE CONFIGSHOW SCHEMA RESOURCES to SHOW DATABASE RESOURCESCOUNT SCHEMA RULES to COUNT DATABASE RULESALL_PRIVILEGES_PERMITTED updated to ALL_PERMITTEDSCHEMA_PRIVILEGES_PERMITTED updated to DATABASE_PERMITTEDSHOW UNUSED RESOURCESXA Recovery Id to Governance CenterFinishCheckJob data consistency check when target tables already have the same data as source tablesClusterPersistRepository of proxy in PipelineAPIFactorySHOW ALL VARIABLES and SHOW VARIABLEDROP BINDING TABLE RULESmode_type in the result of SHOW INSTANCE LISTENABLE/DISABLE INSTANCEDROP READWRITE_SPLITTING RULECREATE READWRITE_SPLITTING RULEdelay_time to the result of SHOW READWRITE_SPLITTING READ RESOURCESIF EXISTS when DROP RULEADD/ALTER RESOURCEschemaName identifier when create a JOBInsertValueContext.getValue cast exceptionGeneratedKeysResultSet not return columnName in read-write splittingBatchPreparedStatementExecutorCREATE SHARDING TABLE RULEpassword in ADD RESOURCE statementrateLimiter configuration and QPS TPS implementationDATA_MATCH data consistency checkbatchSize configuration to avoid possible OOMEstreamChannel configuration and MEMORY implementationCREATE SHARDING TABLE RULE, reducing the steps of creating ruleinput and output configuration, including workerThread and rateLimiterblockQueueSize into streamChannelDROP SHARDING ALGORITHMALTER RESOURCECREATE SHARDING ALGORITHMCREATE DEFAULT SHARDING [TABLE | DATABASE] STRATEGYSHOW ALL VARIABLESHOW VARIABLE variableName;3 modes, including Memory, Standalone and Cluster modeNATIVE to ALL_PRIVILEGES_PERMITTEDSHOW RESOURCES DistSQL is adjusted to SHOW SCHEMA RESOURCESshadow logical field, support shadow algorithmABORT statementCREATE INDEX statement to generate index automatically when no index is specifiedADD RESOURCE statement supports special charactersADD RESOURCE supports custom JDBC parameters and connection pool propertiesDROP RESOURCE supports optional parameter ignore single tables, used to ignore single table rule restrictionsSHOW DATABASES statement supports like syntaxCREATE SHARDING TABLE RULE supports the use of inline expressions to specify resourcesCREATE SHARDING TABLE RULE supports configuration using dataNodesCREATE SHARDING TABLE RULE supports reuse of existing algorithmsSET VARIABLE, support to modify proxy configurationSHOW INDEX FROM TABLE FROM TABLE statement rewrite exceptionSHOW RESOURCES statement cannot display custom attributesQueryReplica configuration item is replaced by read-write-splittingAuthentication configuration item of ShardingProxy is replaced by AUTHORITYdataSourceClassNameacceptor-size from ShardingProxySELECT * from encrypt SQL, add quote char for rewritten column to avoid conflict with keywordCREATE/ALTER/DROP TABLESPACE statementPREPARE, EXECUTE, DEALLOCATE statementEXPLAIN statementSTART/END TRANSACTION statementALTER/DROP INDEX statementTABLESPACE of PostgreSQLCREATE LOADABLE FUNCTION statementALTER TABLE RENAME statementSELECT * wildcard when readwrite-splitting onlyUPDATE ... SET ... statementSELECT ... WHERE ... LIKE statement class cast exceptionSELECT EXISTS ... FROM ... statement parse error... GROUP BY ... statement rewrite and merge result errorallow.range.query.with.inline.sharding optionDataTypeName syntax rules of all database dialectsBEGIN using prepared statement of MySQL C APIALTER TABLE fails to execute when the field type of the table contains Integer/Double/BigDecimalSELECT * FROM tbl WHERE encrypt_col = ? AND (sharding_key = ? OR sharding_key = ?) when using sharding + encrypt would throw StringIndexOutOfBoundsException\n \t \r could not supported by parser.io.shardingsphere to org.apache.shardingsphere.SELECT FOR UPDATE route to primary data source only.SELECT FOR UPDATE on primary data source.Merge all change logs of version 3.1.0.M1, 3.1.0, 3.1.0.1 and 4.0.0.M1. First apache release.
io.shardingsphere to org.apache.shardingsphere.order by ?YAML instead of JSON to store configurations in registry centerSpring Boot Starter 2.X$->{..} for inline expressionSELECT ITEMS correspond to the real column names of GROUP BY or ORDER BY, there is no need to generate derived columnsNOT IN parse exceptionSELECT * FROM table WHERE id IN ()SELECT id, COUNT(*) FROM table GROUP BY 1,2GROUP BY / ORDER BY appear in query resultRound-robin load-balance algorithm in MybatisSpring Boot YAML configurationYAML configurationCREATE INDEXDROP INDEXShardingProperties is invalid in YAML configurationIS NOT NULL parse errorGROUP BY and ORDER BY aliases are inconsistent, stream merging should be used-.12)DuplicateKeyException when the unique key conflictrownum greater than or equal to or less than or equal to the result of paging is incorrect in OracleRuntimeBeanReference to prevent the creation of InnerBean on spring namespaceResultSet.getStatement().getConnection().close()Maven, package name and spring namespace name. Simplify and enhance API configuration, inline expression fully configuration supportspring-boot-starter of ShardingSphere-JDBCZooKeeper and etcd can be used as registry to dynamically modify data sources and sharding configurationsShardingSphere-JDBC through sky-walking and other Opentracing based APM systemsSELECT 1sharding-jdbc-spring-boot-starterAutomatic generation key implementation, including