Skip to content

Commit 5d7d5b8

Browse files
committed
releases, readme: add the release notes for 2.1 RC1
1 parent d9f9374 commit 5d7d5b8

File tree

3 files changed

+157
-0
lines changed

3 files changed

+157
-0
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@
130130
- [Frequently Asked Questions (FAQ)](FAQ.md)
131131
- [TiDB Best Practices](https://pingcap.github.io/blog/2017/07/24/tidbbestpractice/)
132132
+ [Releases](releases/rn.md)
133+
- [2.1 RC1](releases/2.1rc1.md)
133134
- [2.0.6](releases/206.md)
134135
- [2.0.5](releases/205.md)
135136
- [2.1 Beta](releases/21beta.md)

releases/2.1rc1.md

+155
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
---
2+
title: TiDB 2.1 RC1 Release Notes
3+
category: Releases
4+
---
5+
6+
# TiDB 2.1 RC1 Release Notes
7+
8+
On August 24, 2018, TiDB 2.1 RC1 is released! Compared with TiDB 2.1 Beta, this release has great improvement in stability, SQL optimizer, statistics information, and execution engine.
9+
10+
## TiDB
11+
12+
- SQL Optimizer
13+
- Fix the issue that a wrong result is returned after the correlated subquery is decorrelated in some cases [#6972](https://github.com/pingcap/tidb/pull/6972)
14+
- Optimize the output result of `Explain` [#7011](https://github.com/pingcap/tidb/pull/7011)[#7041](https://github.com/pingcap/tidb/pull/7041)
15+
- Optimize the choosing strategy of the outer table for `IndexJoin` [#7019](https://github.com/pingcap/tidb/pull/7019)
16+
- Remove the Plan Cache of the non-`PREPARE` statement [#7040](https://github.com/pingcap/tidb/pull/7040)
17+
- Fix the issue that the `INSERT` statement is not parsed and executed correctly in some cases [#7068](https://github.com/pingcap/tidb/pull/7068)
18+
- Fix the issue that the `IndexJoin` result is not correct in some cases [#7150](https://github.com/pingcap/tidb/pull/7150)
19+
- Fix the issue that the `NULL` value cannot be found using the unique index in some cases [#7163](https://github.com/pingcap/tidb/pull/7163)
20+
- Fix the range computing issue of the prefix index in UTF-8 [#7194](https://github.com/pingcap/tidb/pull/7194)
21+
- Fix the issue that result is not correct caused by eliminating the `Project` operator in some cases [#7257](https://github.com/pingcap/tidb/pull/7257)
22+
- Fix the issue that `USE INDEX(`PRIMARY`)` cannot be used when the primary key is an integer [#7316](https://github.com/pingcap/tidb/pull/7316)
23+
- Fix the issue that the index range cannot be computed using the correlated column in some cases [#7357](https://github.com/pingcap/tidb/pull/7357)
24+
- SQL Execution Engine
25+
- Fix the issue that the daylight saving time is not computed correctly in some cases [#6823](https://github.com/pingcap/tidb/pull/6823)
26+
- Refactor the aggregation function framework to improve the execution efficiency of the `Stream` and `Hash` aggregation operators [#6852](https://github.com/pingcap/tidb/pull/6852)
27+
- Fix the issue that the `Hash` aggregation operator cannot exit normally in some cases [#6982](https://github.com/pingcap/tidb/pull/6982)
28+
- Fix the issue that `BIT_AND`/`BIT_OR`/`BIT_XOR` does not handle the non-integer data correctly [#6994](https://github.com/pingcap/tidb/pull/6994)
29+
- Optimize the execution speed of the `REPLACE INTO` statement and increase the performance nearly 10 times [#7027](https://github.com/pingcap/tidb/pull/7027)
30+
- Optimize the memory usage of time type data and decrease the memory usage of the time type data by fifty percent [#7043](https://github.com/pingcap/tidb/pull/7043)
31+
- Fix the issue that the returned result is mixed with signed and unsigned integers in the `UNION` statement is not compatible with MySQL [#7112](https://github.com/pingcap/tidb/pull/7112)
32+
- Fix the panic issue caused by the too much memory applied by `LPAD`/`RPAD`/`TO_BASE64`/`FROM_BASE64`/`REPEAT` [#7171](https://github.com/pingcap/tidb/pull/7171) [#7266](https://github.com/pingcap/tidb/pull/7266) [#7409](https://github.com/pingcap/tidb/pull/7409) [#7431](https://github.com/pingcap/tidb/pull/7431)
33+
- Fix the incorrect result when `MergeJoin`/`IndexJoin` handles the `NULL` value [#7255](https://github.com/pingcap/tidb/pull/7255)
34+
- Fix the incorrect result of `Outer Join` in some cases [#7288](https://github.com/pingcap/tidb/pull/7288)
35+
- Improve the error message of `Data Truncated` to facilitate locating the wrong data and the corresponding field in the table [#7401](https://github.com/pingcap/tidb/pull/7401)
36+
- Fix the incorrect result for `decimal` in some cases [#7001](https://github.com/pingcap/tidb/pull/7001) [#7113](https://github.com/pingcap/tidb/pull/7113) [#7202](https://github.com/pingcap/tidb/pull/7202) [#7208](https://github.com/pingcap/tidb/pull/7208)
37+
- Optimize the point select performance [#6937](https://github.com/pingcap/tidb/pull/6937)
38+
- Prohibit the isolation level of `Read Commited` to avoid the underlying problem [#7211](https://github.com/pingcap/tidb/pull/7211)
39+
- Fix the incorrect result of `LTRIM`/`RTRIM`/`TRIM` in some cases [#7291](https://github.com/pingcap/tidb/pull/7291)
40+
- Fix the issue that the `MaxOneRow` operator cannot guarantee that the returned result does not exceed one row [#7375](https://github.com/pingcap/tidb/pull/7375)
41+
- Divide the Coprocessor requests with too many ranges [#7454](https://github.com/pingcap/tidb/pull/7454)
42+
- Statistics
43+
- Optimize the mechanism of statistics dynamic collection [#6796](https://github.com/pingcap/tidb/pull/6796)
44+
- Fix the issue that `Auto Analyze` does not work when data is updated frequently [#7022](https://github.com/pingcap/tidb/pull/7022)
45+
- Decrease the Write conflicts during the statistics dynamic update process [#7124](https://github.com/pingcap/tidb/pull/7124)
46+
- Optimize the cost estimation when the statistics is incorrect [#7175](https://github.com/pingcap/tidb/pull/7175)
47+
- Optimize the `AccessPath` cost estimation strategy [#7233](https://github.com/pingcap/tidb/pull/7233)
48+
- Server
49+
- Fix the bug in loading privilege information [#6976](https://github.com/pingcap/tidb/pull/6976)
50+
- Fix the issue that the `Kill` command is too strict with privilege check [#6954](https://github.com/pingcap/tidb/pull/6954)
51+
- Fix the issue of removing some binary numeric types [#6922](https://github.com/pingcap/tidb/pull/6922)
52+
- Shorten the output log [#7029](https://github.com/pingcap/tidb/pull/7029)
53+
- Handle the `mismatchClusterID` issue [#7053](https://github.com/pingcap/tidb/pull/7053)
54+
- Add the `advertise-address` configuration item [#7078](https://github.com/pingcap/tidb/pull/7078)
55+
- Add the `GrpcKeepAlive` option [#7100](https://github.com/pingcap/tidb/pull/7100)
56+
- Add the connection or `Token` time monitor [#7110](https://github.com/pingcap/tidb/pull/7110)
57+
- Optimize the data decoding performance [#7149](https://github.com/pingcap/tidb/pull/7149)
58+
- Add the `PROCESSLIST` table in `INFORMMATION_SCHEMA` [#7236](https://github.com/pingcap/tidb/pull/7236)
59+
- Fix the order issue when multiple rules are hit in verifying the privilege [#7211](https://github.com/pingcap/tidb/pull/7211)
60+
- Change some default values of encoding related system variables to UTF-8 [#7198](https://github.com/pingcap/tidb/pull/7198)
61+
- Make the slow query log show more detailed information [#7302](https://github.com/pingcap/tidb/pull/7302)
62+
- Support registering tidb-server related information in PD and obtaining this information by HTTP API [#7082](https://github.com/pingcap/tidb/pull/7082)
63+
- Compatibility
64+
- Support Session variables `warning_count` and `error_count` [#6945](https://github.com/pingcap/tidb/pull/6945)
65+
- Add `Scope` check when reading the system variables [#6958](https://github.com/pingcap/tidb/pull/6958)
66+
- Support the `MAX_EXECUTION_TIME` syntax [#7012](https://github.com/pingcap/tidb/pull/7012)
67+
- Support more statements of the `SET` syntax [#7020](https://github.com/pingcap/tidb/pull/7020)
68+
- Add validity check when setting system variables [#7117](https://github.com/pingcap/tidb/pull/7117)
69+
- Add the verification of the number of `PlaceHolder`s in the `Prepare` statement [#7162](https://github.com/pingcap/tidb/pull/7162)
70+
- Support `set character_set_results = null` [#7353](https://github.com/pingcap/tidb/pull/7353)
71+
- Support the `flush status` syntax [#7369](https://github.com/pingcap/tidb/pull/7369)
72+
- Fix the column size of `SET` and `ENUM` types in `information_schema` [#7347](https://github.com/pingcap/tidb/pull/7347)
73+
- Support the `NATIONAL CHARACTER` syntax of statements for creating a table [#7378](https://github.com/pingcap/tidb/pull/7378)
74+
- Support the `CHARACTER SET` syntax in the `LOAD DATA` statement [#7391](https://github.com/pingcap/tidb/pull/7391)
75+
- Fix the column information of the `SET` and `ENUM` types [#7417](https://github.com/pingcap/tidb/pull/7417)
76+
- Support the `IDENTIFIED WITH` syntax in the `CREATE USER` statement [#7402](https://github.com/pingcap/tidb/pull/7402)
77+
- Fix the precision losing issue during `TIMESTAMP` computing process [#7418](https://github.com/pingcap/tidb/pull/7418)
78+
- Support the validity verification of more `SYSTEM` variables [#7196](https://github.com/pingcap/tidb/pull/7196)
79+
- Fix the incorrect result when the `CHAR_LENGTH` function computes the binary string [#7410](https://github.com/pingcap/tidb/pull/7410)
80+
- Fix the incorrect `CONCAT` result in a statement involving `GROUP BY` [#7448](https://github.com/pingcap/tidb/pull/7448)
81+
- Fix the imprecise type length issue when casting the `DECIMAL` type to the `STRING` type [#7451](https://github.com/pingcap/tidb/pull/7451)
82+
- DML
83+
- Fix the stability issue of the `Load Data` statement [#6927](https://github.com/pingcap/tidb/pull/6927)
84+
- Fix the memory usage issue when performing some `Batch` operations [#7086](https://github.com/pingcap/tidb/pull/7086)
85+
- Improve the performance of the `Replace Into` statement [#7027](https://github.com/pingcap/tidb/pull/7027)
86+
- Fix the inconsistent precision issue when writing `CURRENT_TIMESTAMP` [#7355](https://github.com/pingcap/tidb/pull/7355)
87+
- DDL
88+
- Improve the method of DDL judging whether `Schema` is synchronized to avoid misjudgement in some cases [#7319](https://github.com/pingcap/tidb/pull/7319)
89+
- Fix the `SHOW CREATE TABLE` result in adding index process [#6993](https://github.com/pingcap/tidb/pull/6993)
90+
- Allow the default value of `text`/`blob`/`json` to be NULL in non-restrict `sql-mode` [#7230](https://github.com/pingcap/tidb/pull/7230)
91+
- Fix the `ADD INDEX` issue in some cases [#7142](https://github.com/pingcap/tidb/pull/7142)
92+
- Increase the speed of adding `UNIQUE-KEY` index operation largely [#7132](https://github.com/pingcap/tidb/pull/7132)
93+
- Fix the truncating issue of the prefix index in UTF-8 character set [#7109](https://github.com/pingcap/tidb/pull/7109)
94+
- Add the environment variable `tidb_ddl_reorg_priority` to control the priority of the `add-index` operation [#7116](https://github.com/pingcap/tidb/pull/7116)
95+
- Fix the display issue of `AUTO-INCREMENT` in `information_schema.tables` [#7037](https://github.com/pingcap/tidb/pull/7037)
96+
- Support the `admin show ddl jobs <number>` command and support output specified number of DDL jobs [#7028](https://github.com/pingcap/tidb/pull/7028)
97+
- Support parallel DDL job execution [#6955](https://github.com/pingcap/tidb/pull/6955)
98+
- [Table Partition](https://github.com/pingcap/tidb/projects/6) (Experimental)
99+
- Support top level partition
100+
- Support `Range Partition`
101+
102+
## PD
103+
104+
- Features
105+
- Introduce the version control mechanism and support rolling update of the cluster with compatibility
106+
- Enable the `region merge` feature
107+
- Support the `GetPrevRegion` interface
108+
- Support splitting Regions in batch
109+
- Support storing the GC safepoint
110+
- Improvements
111+
- Optimize the issue that TSO allocation is affected by the system clock going backwards
112+
- Optimize the performance of handling Region heartbeats
113+
- Optimize the Region tree performance
114+
- Optimize the performance of computing hotspot statistics
115+
- Optimize returning the error code of API interface
116+
- Add options of controlling scheduling strategies
117+
- Prohibit using special characters in `label`
118+
- Improve the scheduling simulator
119+
- Support splitting Regions using statistics in pd-ctl
120+
- Support formatting JSON output by calling `jq` in pd-ctl
121+
- Add metrics about etcd Raft state machine
122+
- Bug fixes
123+
- Fix the issue that the namespace is not reloaded after switching Leader
124+
- Fix the issue that namespace scheduling exceeds the schedule limit
125+
- Fix the issue that hotspot scheduling exceeds the schedule limit
126+
- Fix the issue that wrong logs are output when the PD client closes
127+
- Fix the wrong statistics of Region heartbeat latency
128+
129+
## TiKV
130+
131+
- Features
132+
- Support `batch split` to avoid too large Regions caused by the Write operation on hot Regions
133+
- Support splitting Regions based on the number of rows to improve the index scan efficiency
134+
- Performance
135+
- Use `LocalReader` to separate the Read operation from the raftstore thread to lower the Read latency
136+
- Refactor the MVCC framework, optimize the memory usage and improve the scan Read performance
137+
- Support splitting Regions based on statistics estimation to reduce the I/O usage
138+
- Optimize the issue that the Read performance is affected by continuous Write operations on the rollback record
139+
- Reduce the memory usage of pushdown aggregation computing
140+
- Improvements
141+
- Add the pushdown support for a large number of built-in functions and better charset support
142+
- Optimize the GC workflow, improve the GC speed and decrease the impact of GC on the system
143+
- Enable `prevote` to speed up service recovery when the network is abnormal
144+
- Add the related configuration items of RocksDB log files
145+
- Adjust the default configuration of `scheduler_latch`
146+
- Support setting whether to compact the data in the bottom layer of RocksDB when using tikv-ctl to compact data manually
147+
- Add the check for environment variables when starting TiKV
148+
- Support dynamically configuring the `dynamic_level_bytes` parameter based on the existing data
149+
- Support customizing the log format
150+
- Integrate tikv-fail in tikv-ctl
151+
- Add I/O metrics of threads
152+
- Bug fixes
153+
- Fix decimal related issues
154+
- Fix the issue that `gRPC max_send_message_len` is set mistakenly
155+
- Fix the issue caused by misconfiguration of `region_size`

releases/rn.md

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ category: release
55

66
# TiDB Release Notes
77

8+
- [2.1 RC1](releases/2.1rc1.md)
89
- [2.0.6](206.md)
910
- [2.0.5](205.md)
1011
- [2.1 Beta](21beta.md)

0 commit comments

Comments
 (0)