- Docs Home
- About TiDB
- Quick Start
- Develop
- Overview
- Quick Start
- Build a TiDB Cluster in TiDB Cloud (Developer Tier)
- CRUD SQL in TiDB
- Build a Simple CRUD App with TiDB
- Example Applications
- Connect to TiDB
- Design Database Schema
- Write Data
- Read Data
- Transaction
- Optimize
- Troubleshoot
- Reference
- Cloud Native Development Environment
- Third-party Support
- Deploy
- Software and Hardware Requirements
- Environment Configuration Checklist
- Plan Cluster Topology
- Install and Start
- Verify Cluster Status
- Test Cluster Performance
- Migrate
- Overview
- Migration Tools
- Migration Scenarios
- Migrate from Aurora
- Migrate MySQL of Small Datasets
- Migrate MySQL of Large Datasets
- Migrate and Merge MySQL Shards of Small Datasets
- Migrate and Merge MySQL Shards of Large Datasets
- Migrate from CSV Files
- Migrate from SQL Files
- Migrate from One TiDB Cluster to Another TiDB Cluster
- Migrate from TiDB to MySQL-compatible Databases
- Advanced Migration
- Integrate
- Maintain
- Monitor and Alert
- Troubleshoot
- TiDB Troubleshooting Map
- Identify Slow Queries
- Analyze Slow Queries
- SQL Diagnostics
- Identify Expensive Queries Using Top SQL
- Identify Expensive Queries Using Logs
- Statement Summary Tables
- Troubleshoot Hotspot Issues
- Troubleshoot Increased Read and Write Latency
- Save and Restore the On-Site Information of a Cluster
- Troubleshoot Cluster Setup
- Troubleshoot High Disk I/O Usage
- Troubleshoot Lock Conflicts
- Troubleshoot TiFlash
- Troubleshoot Write Conflicts in Optimistic Transactions
- Troubleshoot Inconsistency Between Data and Indexes
- Performance Tuning
- Tuning Guide
- Configuration Tuning
- System Tuning
- Software Tuning
- SQL Tuning
- Overview
- Understanding the Query Execution Plan
- SQL Optimization Process
- Overview
- Logic Optimization
- Physical Optimization
- Prepare Execution Plan Cache
- Control Execution Plans
- Tutorials
- TiDB Tools
- Overview
- Use Cases
- Download
- TiUP
- Documentation Map
- Overview
- Terminology and Concepts
- Manage TiUP Components
- FAQ
- Troubleshooting Guide
- Command Reference
- Overview
- TiUP Commands
- TiUP Cluster Commands
- Overview
- tiup cluster audit
- tiup cluster check
- tiup cluster clean
- tiup cluster deploy
- tiup cluster destroy
- tiup cluster disable
- tiup cluster display
- tiup cluster edit-config
- tiup cluster enable
- tiup cluster help
- tiup cluster import
- tiup cluster list
- tiup cluster patch
- tiup cluster prune
- tiup cluster reload
- tiup cluster rename
- tiup cluster replay
- tiup cluster restart
- tiup cluster scale-in
- tiup cluster scale-out
- tiup cluster start
- tiup cluster stop
- tiup cluster template
- tiup cluster upgrade
- TiUP DM Commands
- Overview
- tiup dm audit
- tiup dm deploy
- tiup dm destroy
- tiup dm disable
- tiup dm display
- tiup dm edit-config
- tiup dm enable
- tiup dm help
- tiup dm import
- tiup dm list
- tiup dm patch
- tiup dm prune
- tiup dm reload
- tiup dm replay
- tiup dm restart
- tiup dm scale-in
- tiup dm scale-out
- tiup dm start
- tiup dm stop
- tiup dm template
- tiup dm upgrade
- TiDB Cluster Topology Reference
- DM Cluster Topology Reference
- Mirror Reference Guide
- TiUP Components
- PingCAP Clinic Diagnostic Service
- TiDB Operator
- Dumpling
- TiDB Lightning
- TiDB Data Migration
- About TiDB Data Migration
- Architecture
- Quick Start
- Deploy a DM cluster
- Tutorials
- Advanced Tutorials
- Maintain
- Cluster Upgrade
- Tools
- Performance Tuning
- Manage Data Sources
- Manage Tasks
- Export and Import Data Sources and Task Configurations of Clusters
- Handle Alerts
- Daily Check
- Reference
- Architecture
- Command Line
- Configuration Files
- OpenAPI
- Compatibility Catalog
- Secure
- Monitoring and Alerts
- Error Codes
- Glossary
- Example
- Troubleshoot
- Release Notes
- Backup & Restore (BR)
- TiDB Binlog
- TiCDC
- Dumpling
- sync-diff-inspector
- TiSpark
- Reference
- Cluster Architecture
- Key Monitoring Metrics
- Secure
- Privileges
- SQL
- SQL Language Structure and Syntax
- SQL Statements
ADD COLUMN
ADD INDEX
ADMIN
ADMIN CANCEL DDL
ADMIN CHECKSUM TABLE
ADMIN CHECK [TABLE|INDEX]
ADMIN SHOW DDL [JOBS|QUERIES]
ADMIN SHOW TELEMETRY
ALTER DATABASE
ALTER INDEX
ALTER INSTANCE
ALTER PLACEMENT POLICY
ALTER TABLE
ALTER TABLE COMPACT
ALTER USER
ANALYZE TABLE
BACKUP
BATCH
BEGIN
CHANGE COLUMN
COMMIT
CHANGE DRAINER
CHANGE PUMP
CREATE [GLOBAL|SESSION] BINDING
CREATE DATABASE
CREATE INDEX
CREATE PLACEMENT POLICY
CREATE ROLE
CREATE SEQUENCE
CREATE TABLE LIKE
CREATE TABLE
CREATE USER
CREATE VIEW
DEALLOCATE
DELETE
DESC
DESCRIBE
DO
DROP [GLOBAL|SESSION] BINDING
DROP COLUMN
DROP DATABASE
DROP INDEX
DROP PLACEMENT POLICY
DROP ROLE
DROP SEQUENCE
DROP STATS
DROP TABLE
DROP USER
DROP VIEW
EXECUTE
EXPLAIN ANALYZE
EXPLAIN
FLASHBACK TABLE
FLUSH PRIVILEGES
FLUSH STATUS
FLUSH TABLES
GRANT <privileges>
GRANT <role>
INSERT
KILL [TIDB]
LOAD DATA
LOAD STATS
MODIFY COLUMN
PREPARE
RECOVER TABLE
RENAME INDEX
RENAME TABLE
REPLACE
RESTORE
REVOKE <privileges>
REVOKE <role>
ROLLBACK
SELECT
SET DEFAULT ROLE
SET [NAMES|CHARACTER SET]
SET PASSWORD
SET ROLE
SET TRANSACTION
SET [GLOBAL|SESSION] <variable>
SHOW ANALYZE STATUS
SHOW [BACKUPS|RESTORES]
SHOW [GLOBAL|SESSION] BINDINGS
SHOW BUILTINS
SHOW CHARACTER SET
SHOW COLLATION
SHOW [FULL] COLUMNS FROM
SHOW CONFIG
SHOW CREATE PLACEMENT POLICY
SHOW CREATE SEQUENCE
SHOW CREATE TABLE
SHOW CREATE USER
SHOW DATABASES
SHOW DRAINER STATUS
SHOW ENGINES
SHOW ERRORS
SHOW [FULL] FIELDS FROM
SHOW GRANTS
SHOW INDEX [FROM|IN]
SHOW INDEXES [FROM|IN]
SHOW KEYS [FROM|IN]
SHOW MASTER STATUS
SHOW PLACEMENT
SHOW PLACEMENT FOR
SHOW PLACEMENT LABELS
SHOW PLUGINS
SHOW PRIVILEGES
SHOW [FULL] PROCESSSLIST
SHOW PROFILES
SHOW PUMP STATUS
SHOW SCHEMAS
SHOW STATS_HEALTHY
SHOW STATS_HISTOGRAMS
SHOW STATS_META
SHOW STATUS
SHOW TABLE NEXT_ROW_ID
SHOW TABLE REGIONS
SHOW TABLE STATUS
SHOW [FULL] TABLES
SHOW [GLOBAL|SESSION] VARIABLES
SHOW WARNINGS
SHUTDOWN
SPLIT REGION
START TRANSACTION
TABLE
TRACE
TRUNCATE
UPDATE
USE
WITH
- Data Types
- Functions and Operators
- Overview
- Type Conversion in Expression Evaluation
- Operators
- Control Flow Functions
- String Functions
- Numeric Functions and Operators
- Date and Time Functions
- Bit Functions and Operators
- Cast Functions and Operators
- Encryption and Compression Functions
- Locking Functions
- Information Functions
- JSON Functions
- Aggregate (GROUP BY) Functions
- Window Functions
- Miscellaneous Functions
- Precision Math
- Set Operations
- List of Expressions for Pushdown
- TiDB Specific Functions
- Clustered Indexes
- Constraints
- Generated Columns
- SQL Mode
- Table Attributes
- Transactions
- Garbage Collection (GC)
- Views
- Partitioning
- Temporary Tables
- Cached Tables
- Character Set and Collation
- Placement Rules in SQL
- System Tables
mysql
- INFORMATION_SCHEMA
- Overview
ANALYZE_STATUS
CLIENT_ERRORS_SUMMARY_BY_HOST
CLIENT_ERRORS_SUMMARY_BY_USER
CLIENT_ERRORS_SUMMARY_GLOBAL
CHARACTER_SETS
CLUSTER_CONFIG
CLUSTER_HARDWARE
CLUSTER_INFO
CLUSTER_LOAD
CLUSTER_LOG
CLUSTER_SYSTEMINFO
COLLATIONS
COLLATION_CHARACTER_SET_APPLICABILITY
COLUMNS
DATA_LOCK_WAITS
DDL_JOBS
DEADLOCKS
ENGINES
INSPECTION_RESULT
INSPECTION_RULES
INSPECTION_SUMMARY
KEY_COLUMN_USAGE
METRICS_SUMMARY
METRICS_TABLES
PARTITIONS
PLACEMENT_POLICIES
PROCESSLIST
REFERENTIAL_CONSTRAINTS
SCHEMATA
SEQUENCES
SESSION_VARIABLES
SLOW_QUERY
STATISTICS
TABLES
TABLE_CONSTRAINTS
TABLE_STORAGE_STATS
TIDB_HOT_REGIONS
TIDB_HOT_REGIONS_HISTORY
TIDB_INDEXES
TIDB_SERVERS_INFO
TIDB_TRX
TIFLASH_REPLICA
TIKV_REGION_PEERS
TIKV_REGION_STATUS
TIKV_STORE_STATUS
USER_PRIVILEGES
VIEWS
METRICS_SCHEMA
- UI
- TiDB Dashboard
- Overview
- Maintain
- Access
- Overview Page
- Cluster Info Page
- Top SQL Page
- Key Visualizer Page
- Metrics Relation Graph
- SQL Statements Analysis
- Slow Queries Page
- Cluster Diagnostics
- Search Logs Page
- Instance Profiling
- Session Management and Configuration
- FAQ
- CLI
- Command Line Flags
- Configuration File Parameters
- System Variables
- Storage Engines
- Telemetry
- Errors Codes
- Table Filter
- Schedule Replicas by Topology Labels
- FAQs
- Release Notes
- All Releases
- Release Timeline
- TiDB Versioning
- v6.1
- v6.0
- v5.4
- v5.3
- v5.2
- v5.1
- v5.0
- v4.0
- v3.1
- v3.0
- v2.1
- v2.0
- v1.0
- Glossary
TiDB 4.0.11 Release Notes
Release date: February 26, 2021
TiDB version: 4.0.11
New Features
TiDB
- Support the
utf8_unicode_ci
andutf8mb4_unicode_ci
collations #22558
- Support the
TiKV
TiFlash
- Add a Coprocessor thread pool to queue Coprocessor requests for execution, which avoids out of memory (OOM) in some cases, and add the
cop_pool_size
andbatch_cop_pool_size
configuration items with the default values ofNumOfPhysicalCores * 2
- Add a Coprocessor thread pool to queue Coprocessor requests for execution, which avoids out of memory (OOM) in some cases, and add the
Improvements
TiDB
- Reorder inner joins that are simplified from outer joins #22402
- Support multiple clusters in Grafana dashboards #22534
- Add a workaround for the issue of multiple statements #22468
- Divide the metrics of slow query into
internal
andgeneral
#22405 - Add interface for
utf8_unicode_ci
andutf8mb4_unicode_ci
collations #22099
TiKV
- Add metrics of server information for DBaaS #9591
- Support multiple clusters in Grafana dashboards #9572
- Report RocksDB metrics to TiDB #9316
- Record the suspension time for Coprocessor tasks #9277
- Add thresholds of key counts and key size for Load Base Split #9354
- Check whether the file exists before data import #9544
- Improve Fast Tune panels #9180
PD
- Support multiple clusters in Grafana dashboards #3398
TiFlash
- Optimize the performance of the
date_format
function - Optimize the memory consumption of handling ingest SST
- Optimize the retrying logic in Batch Coprocessor to reduce the probability of Region error
- Optimize the performance of the
Tools
TiCDC
- Add the version information in the
capture
metadata and add the CLI version of achangefeed
in thechangefeed
metadata #1342
- Add the version information in the
TiDB Lightning
Bug Fixes
TiDB
- Fix the issue of abnormal
unicode_ci
constant propagation #22614 - Fix the issue that might cause wrong collation and coercibility #22602
- Fix the issue that might cause wrong collation results #22599
- Fix the issue of constant substitution for different collations #22582
- Fix a bug that the
like
function might return wrong result when using collation #22531 - Fix the issue of incorrect
duration
type inference inleast
andgreatest
functions #22580 - Fix a bug that occurs when the
like
function handles a single character wildcard (_
) followed by a multiple character wildcard (%
) #22575 - Fix the type inference error of the TiDB's built-in functions (
least
andgreatest
) #22562 - Fix a bug that makes the
like
function get the wrong result if the pattern string is a unicode string #22529 - Fix a bug that the point get query does not get the snapshot data when the
@@tidb_snapshot
variable is set #22527 - Fix the potential panic that occurs when generating hints from joins #22518
- Fix the issue that strings are incorrectly converted to the
BIT
type #22420 - Fix the
index out of range
error that occurs when inserting values to thetidb_rowid
column #22359 - Fix a bug that the cached plan is incorrectly used #22353
- Fix the runtime panic in the
WEIGHT_STRING
function when the length of the binary/char string is too large #22332 - Forbid using the generated column when the number of function parameters is invalid #22174
- Correctly set the process information before building the execution plan #22148
- Fix the issue of inaccurate runtime statistics of
IndexLookUp
#22136 - Add cache for the memory usage information when the cluster is deployed in a container #22116
- Fix the issue of the decoding plan errors #22022
- Report errors for using invalid window specifications #21976
- Report errors when the
PREPARE
statement is nested withEXECUTE
,DEALLOCATE
orPREPARE
#21972 - Fix the issue that no error is reported when the
INSERT IGNORE
statement is used on a non-existing partition #21971 - Unify the encoding of
EXPLAIN
results and slow log #21964 - Fix the issue of unknown columns in join when using the aggregate operator #21957
- Fix the wrong type inference in the
ceiling
function #21936 - Fix the issue that the
Double
type column ignores its decimal #21916 - Fix the issue that the correlated aggregation is calculated in subqueries #21877
- Report errors for the JSON object with key length >= 65536 #21870
- Fix the issue that the
dyname
function is incompatible with MySQL #21850 - Fix the issue that the
to_base64
function returnsNULL
when the input data is too long #21813 - Fix the failure of comparing multiple fields in the subquery #21808
- Fix the issue that occurs when comparing the float type in JSON #21785
- Fix the issue that occurs when comparing the types of JSON objects #21718
- Fix the issue that the coercibility value of the
cast
function is incorrectly set #21714 - Fix an unexpected panic when using the
IF
function #21711 - Fix the issue that the
NULL
result returned from JSON search is incompatible with MySQL #21700 - Fix the issue that occurs when checking the
only_full_group_by
mode usingORDER BY
andHAVING
#21697 - Fix the issue that the units of
Day
andTime
are incompatible with MySQL #21676 - Fix the issue that the default values of
LEAD
andLAG
cannot adapt to the field type #21665 - Perform a check to ensure that the
LOAD DATA
statement can only load data into base tables #21638 - Fix the issue that occurs when
addtime
andsubtime
functions handle invalid arguments #21635 - Change the round rule for approximate values to "round to the nearest even number" #21628
- Fix the issue that
WEEK()
does not recognize@@GLOBAL.default_week_format
until it has been explicitly read #21623
- Fix the issue of abnormal
TiKV
- Fix the issue that TiKV is failed to build with
PROST=1
#9604 - Fix the unmatched memory diagnostics #9589
- Fix the issue that the end key of a partial RawKV-restore range is inclusive #9583
- Fix the issue of TiKV panic that occurs when loading the old value of a key of a rolled-back transaction during TiCDC's incremental scan #9569
- Fix the configuration glitch of old values when changefeeds with different settings connect to one Region #9565
- Fix a crash issue that occurs when running a TiKV cluster on a machine with a network interface that lacks the MAC address (introduced in v4.0.9) #9516
- Fix the issue of TiKV OOM when backing up a huge Region #9448
- Fix the issue that
region-split-check-diff
cannot be customized #9530 - Fix the issue of TiKV panic when the system time goes back #9542
- Fix the issue that TiKV is failed to build with
PD
TiFlash
- Fix a bug that the
min
/max
result is wrong for the decimal type - Fix a bug that TiFlash might crash when reading data
- Fix the issue that some data written after DDL operations might be lost after data compaction
- Fix the issue that TiFlash incorrectly handles decimal constants in Coprocessor
- Fix the potential crash during the learner read process
- Fix the inconsistent behaviors of division by
0
orNULL
between TiDB and TiFlash
- Fix a bug that the
Tools
TiCDC
- Fix a bug that the TiCDC service might unexpectedly exit when
ErrTaskStatusNotExists
and the closing ofcapture
session occur at the same time #1240 - Fix the old value switch issue that a
changefeed
might be affected by anotherchangefeed
#1347 - Fix a bug that the TiCDC service might hang when processing a new
changefeed
with the invalidsort-engine
parameter #1309 - Fix the issue of panic that occurs when getting the debugging information on non-owner nodes #1349
- Fix the issue that the
ticdc_processor_num_of_tables
andticdc_processor_table_resolved_ts
metrics are not properly updated when adding or removing tables #1351 - Fix the issue of potential data loss if a processor crashes when adding a table #1363
- Fix a bug that the owner might lead to abnormal TiCDC server exits during table migrations #1352
- Fix a bug that TiCDC does not exit in time after the service GC safepoint is lost #1367
- Fix a bug that the KV client might skip creating the event feed #1336
- Fix a bug that the atomicity of transactions is broken when the transactions are replicated to the downstream #1375
- Fix a bug that the TiCDC service might unexpectedly exit when
Backup & Restore (BR)
TiDB Lightning
- Fix a bug that
column count mismatch
might be triggered when using the TiDB-backend #535 - Fix a bug that TiDB-backend panics if the column count of the source file and the column count of the target table mismatch #528
- Fix a bug that TiKV might unexpectedly panic during TiDB Lightning's data import #554
- Fix a bug that
What’s on this page
Was this page helpful?