Releases: pingcap/tidb
Releases · pingcap/tidb
tidb-server v2.0.4
New Features
- Support the
ALTER TABLE t DROP COLUMN a CASCADE
syntax - Support configuring the value of
tidb_snapshot
to TSO
Improvements
- Refine the display of statement types in monitoring items
- Optimize the accuracy of query cost estimation
- Configure the
backoff max delay
parameter of gRPC - Support configuring the memory threshold of a single statement in the configuration file
- Refactor the error of Optimizer
Bug Fixes
- Fix the side effects of the
Cast Decimal
data - Fix the wrong result issue of the
Merge Join
operator in specific scenarios - Fix the issue of converting the Null object to String
- Fix the issue of casting the JSON type of data to the JSON type
- Fix the issue that the result order is not consistent with MySQL in the condition of
Union
+OrderBy
- Fix the compliance rules issue when the
Union
statement checks theLimit/OrderBy
clause - Fix the compatibility issue of the
Union All
result - Fix a bug in predicate pushdown
- Fix the compatibility issue of the
Union
statement with theFor Update
clause - Fix the issue that the
concat_ws
function mistakenly truncates the result
tidb-server v2.1.0-alpha
add pull request template (#6718)
tidb-server v2.0.3
New Features
- Support modifying the log level online
- Support the
COM_CHANGE_USER
command - Support using the
TIME
type parameters under the binary protocol
Improvements
- Optimize the cost estimation of query conditions with the
BETWEEN
expression - Do not display the
FOREIGN KEY
information in the result ofSHOW CREATE TABLE
- Optimize the cost estimation for queries with the
LIMIT
clause
Bug Fixes
- Fix the issue about the
YEAR
type as the unique index - Fix the issue about
ON DUPLICATE KEY UPDATE
in conditions without the unique index - Fix the compatibility issue of the
CEIL
function - Fix the accuracy issue of the
DIV
calculation in theDECIMAL
type - Fix the false alarm of
ADMIN CHECK TABLE
- Fix the panic issue of
MAX
/MIN
under specific expression parameters - Fix the issue that the result of
JOIN
is null in special conditions - Fix the
IN
expression issue when building and querying Range - Fix a Range calculation issue when using
Prepare
to query andPlan Cache
is enabled - Fix the issue that the Schema information is frequently loaded in abnormal conditions
tidb-server v2.0.2
- Fix the issue of pushing down the Decimal division expression
- Support using the
USE INDEX
syntax in theDelete
statement - Forbid using the
shard_row_id_bits
feature in columns withAuto-Increment
- Add the timeout mechanism for writing Binlog
tidb-server v2.0.1
- Update the progress of
Add Index
to the DDL job information in real time - Add the
tidb_auto_analyze_ratio
session variable to control the threshold value of automatic statistics update - Fix an issue that not all residual states are cleaned up when the transaction commit fails
- Fix a bug about adding indexes in some conditions
- Fix the correctness related issue when DDL modifies surface operations in some concurrent scenarios
- Fix a bug that the result of
LIMIT
is incorrect in some conditions - Fix a capitalization issue of the
ADMIN CHECK INDEX
statement to make its index name case insensitive - Fix a compatibility issue about the
UNION
statement - Fix a compatibility issue when inserting data of
TIME
type - Fix a goroutine leak issue caused by
copIteratorTaskSender
in some conditions - Add an option for TiDB to control the behaviour of Binlog failure
- Refactor the
Coprocessor
slow log,distinguish the scenario of tasks with long processing time and long waiting time - Log nothing when meeting MySQL protocol handshake error. Avoid too many logs caused by load balancer keep alive mechanism
- Refine “Out of range value for column” error message
- Fix a bug when there is a subquery in an
Update
statement - Change the behaviour of handling
SIGTERM
, do not wait for all queries to terminate anymore
tidb-server v2.0.0
- SQL Optimizer
- Use more compact data structure to reduce the memory usage of statistics information
- Speed up the loading statistics information when starting a tidb-server process
- Support updating statistics information dynamically [experimental]
- Optimize the cost model to provide more accurate query cost evaluation
- Use
Count-Min Sketch
to estimate the cost of point queries more accurately - Support analyzing more complex conditions to make full use of indexes
- Support manually specifying the
Join
order using theSTRAIGHT_JOIN
syntax - Use the Stream Aggregation operator when the
GROUP BY
clause is empty to improve the performance - Support using indexes for the
MAX/MIN
function - Optimize the processing algorithms for correlated subqueries to support decorrelating more types of correlated subqueries and transform them to
Left Outer Join
- Extend
IndexLookupJoin
to be used in matching the index prefix
- SQL Execution Engine
- Refactor all operators using the Chunk architecture, improve the execution performance of analytical queries, and reduce memory usage.There is a significant improvement in the TPC-H benchmark result.
- Support the Streaming Aggregation operators pushdown
- Optimize the
Insert Into Ignore
statement to improve the performance by over 10 times - Optimize the
Insert On Duplicate Key Update
statement to improve the performance by over 10 times - Optimize
Load Data
to improve the performance by over 10 times - Push down more data types and functions to TiKV
- Support computing the memory usage of physical operators, and specifying the processing behavior in the configuration file and system variables when the memory usage exceeds the threshold
- Support limiting the memory usage by a single SQL statement to reduce the risk of OOM
- Support using implicit RowID in CRUD operations
- Improve the performance of point queries
- Server
- Support the Proxy Protocol
- Add more monitoring metrics and refine the log
- Support validating the configuration files
- Support obtaining the information of TiDB parameters through HTTP API
- Resolve Lock in the Batch mode to speed up garbage collection
- Support multi-threaded garbage collection
- Support TLS
- Compatibility
- Support more MySQL syntaxes
- Support modifying the
lower_case_table_names
system variable in the configuration file to support the OGG data synchronization tool - Improve compatibility with the Navicat management tool
- Support displaying the table creating time in
Information_Schema
- Fix the issue that the return types of some functions/expressions differ from MySQL
- Improve compatibility with JDBC
- Support more SQL Modes
- DDL
- Optimize the
Add Index
operation to greatly improve the execution speed in some scenarios - Attach a lower priority to the
Add Index
operation to reduce the impact on online business - Output more detailed status information of the DDL jobs in
Admin Show DDL Jobs
- Support querying the original statements of currently running DDL jobs using
Admin Show DDL Job Queries JobID
- Support recovering the index data using
Admin Recover Index
for disaster recovery - Support modifying Table Options using the
Alter
statement
- Optimize the
tidb-server v1.0.9
tidb-server v2.0.0-rc.6
- Fix an issue about rolling update to release candidate version higher than 2.0.0-rc4
tidb-server v2.0.0-rc.5
- Fix the issue about applying the
Top-N
pushdown rule - Fix the estimation of the number of rows for the columns that contain NULL values
- Fix the zero value of the Binary type
- Fix the
BatchGet
issue within a transaction - Clean up the written data while rolling back the
Add Index
operation, to reduce consumed space - Optimize the
insert on duplicate key update
statement to improve the performance by 10 times - Fix the issue about the type of the results returned by the
UNIX_TIMESTAMP
function - Fix the issue that the NULL value is inserted while adding NOT NULL columns
- Support showing memory usage of the executing statements in the
Show Process List
statement - Fix the issue that
Alter Table Modify Column
reports an error in extreme conditions - Support setting the table comment using the
Alter
statement
tidb-server v2.0.0-rc.4
- Support
SHOW GRANTS FOR CURRENT_USER();
- Fix the issue that the
Expression
inUnionScan
is not cloned - Support the
SET TRANSACTION
syntax - Fix the potential goroutine leak issue in
copIterator
- Fix the issue that
admin check table
misjudges the unique index including null - Support displaying floating point numbers using scientific notation
- Fix the type inference issue during binary literal computing
- Fix the issue in parsing the
CREATE VIEW
statement - Fix the panic issue when one statement contains both
ORDER BY
andLIMIT 0
- Improve the execution performance of
DecodeBytes
- Optimize
LIMIT 0
toTableDual
, to avoid building useless execution plans