All Versions
64
Latest Version
Avg Release Cycle
28 days
Latest Release
1334 days ago
Changelog History
Page 3
Changelog History
Page 3
-
v3.0.16 Changes
July 06, 2020π Improvements
- π Support the
is null
filter condition in hash partition pruning #17308 - β± Assign different
Backoffer
s to each Region to avoid the SQL timeout issue when multiple Region requests fail at the same time #17583 - Split separate Regions for the newly added partition #17668
- β‘οΈ Discard feedbacks generated from the
delete
orupdate
statement #17841 - π· Correct the usage of
json.Unmarshal
injob.DecodeArgs
to be compatible with future Go versions #17887 - β Remove sensitive information in the slow query log and the statement summary table #18128
- Match the MySQL behavior with
DateTime
delimiters #17499 - π Handle
%h
in date formats in the range that is consistent with MySQL #17496
π Bug Fixes
- π Fix the data inconsistency issue occurred because the lock of a written and deleted primary key in one transaction is resolved by another transaction #18248
- π Fix the
Got too many pings
gRPC error log in the PD server-side followers 17944 - π Fix the panic issue that might occur when the child of HashJoin returns the
TypeNull
column #17935 - π Fix the error message when access is denied #17722
- π Fix JSON comparison issue for the
int
andfloat
types #17715 - β‘οΈ Update the failpoint which causes data race #17710
- π Fix the issue that the timeout pre-split Regions might not work when creating tables #17617
- π Fix the panic caused by ambiguous error messages after the sending failure #17378
- π Fix the issue that
FLASHBACK TABLE
might fail in some special cases #17165 - π Fix the issue of inaccurate range calculation results when statements only have string columns #16658
- Fix the query error occurred when the
only_full_group_by
SQL mode is set #16620 - π Fix the issue that the field length of results returned from the
case when
function is inaccurate #16562 - π Fix the type inference for the decimal property in the
count
aggregate function #17702
- π Support the
-
v3.0.15 Changes
June 05, 2020π New Features
- Forbid the query in partition tables to use the plan cache feature #16759
- π Support the
admin recover index
andadmin check index
statements on partition tables #17315 #17390 - π Support partition pruning of the
in
condition for Range partition tables #17318 - β‘οΈ Optimize the output of
SHOW CREATE TABLE
, and add quotation marks to the partition name #16315 - π Support the
ORDER BY
clause in theGROUP_CONCAT
function #16988 - π Optimize the memory allocation mechanism of
CMSketch
statistics to reduce the impact of garbage collection (GC) on performance #17543
π Bug Fixes
- π Use deep copy to copy the
enum
andset
type data in theHash
aggregate function; fix an issue of correctness #16890 - π Fix the issue that PointGet returns incorrect results because of the wrong processing logic of integer overflow #16753
- π Fix the issue of incorrect results caused by incorrect processing logic when the
CHAR()
function is used in the query predicate #16557 - π Fix the issue of inconsistent results in the storage layer and calculation layer of the
IsTrue
andIsFalse
functions #16627 - π Fix the incorrect
NotNull
flags in some expressions, such ascase when
#16993 - π Fix the issue that the optimizer cannot find a physical plan for TableDual in some scenarios #17014
- π Fix the issue that the syntax for partition selection does not take effect correctly in the Hash partition table #17051
- π Fix the inconsistent results between TiDB and MySQL when XOR operates on a floating-point number #16976
- π Fix the error that occurs when executing DDL statement in the prepared manner #17415
- π Fix the incorrect processing logic of computing the batch size in ID allocator #17548
- Fix the issue that the
MAX_EXECUTION_TIME
SQL hint does not take effect when exceeding the expensive threshold #17534
-
v3.0.12 Changes
March 16, 2020Compatibility Changes
- Fix the issue of inaccurate timing of prewrite binlog in slow query log. The original timing field was called
Binlog_prewrite_time
. After this fix, the name is changed toWait_prewrite_binlog_time
#15276
π New Features
- π Support dynamic loading of the replaced certificate file by using the
alter instance
statement #15080, #15292 - β Add the
cluster-verify-cn
configuration item. After configuration, the status service can only be used when with the corresponding CN certificate #15164 - β Add a flow limiting feature for DDL requests in each TiDB server to reduce the error reporting frequency of DDL request conflicts #15148
- π Support exiting of the TiDB server when binlog write fails #15339
π Bugfixes
- π Make
GRANT
,REVOKE
guarantee atomicity when modifying multiple users #15092 - π Fix the issue that the locking of pessimistic lock on the partition table failed to lock the correct row #15114
- π§ Make the error message display according to the value of
max-index-length
in the configuration when the index length exceeds the limit #15130 - π Fix the incorrect decimal point issue of the
FROM_UNIXTIME
function #15270 - π Fix the issue of conflict detection failure or data index inconsistency caused by deleting records written by oneself in a transaction #15176
- Fix the issue of inaccurate timing of prewrite binlog in slow query log. The original timing field was called
-
v3.0.11 Changes
March 04, 2020Compatibility Changes
- β Add the
max-index-length
configuration item to control the maximum index length, which is compatible with the behavior of TiDB versions before 3.0.7 or of MySQL #15057
π New Features
- π Support showing the meta information of partitioned tables in the
information_schema.PARTITIONS
table #14849
π Bugfixes
- π Fix the issue of Goroutine leaks when retrying an optimistic transaction because queries using
Union
are not marked read-only #15076 - Fix the issue that
SHOW TABLE STATUS
fails to correctly output the table status at the snapshot time because the value of thetidb_snapshot
parameter is not correctly used when executing theSET SESSION tidb_snapshot = 'xxx';
statement #14391 - π Fix the incorrect result caused by a SQL statement that contains
Sort Merge Join
andORDER BY DESC
at the same time #14664 - π Fix the panic of TiDB server when creating partition tables using the unsupported expression. The error information
This partition function is not allowed
is returned after fixing this panic. #14769 - π Fix the incorrect result occurred when executing the
select max() from subquery
statement with the subquery containingUnion
#14944 - π Fix the issue that an error message is returned when executing the
SHOW BINDINGS
statement after executingDROP BINDING
that drops the execution binding #14865 - π Fix the issue that the connection is broken because the maximum length of an alias in a query is 256 characters in the MySQL protocol, but TiDB does not [cut the alias] (https://dev.mysql.com/doc/refman/8.0/en/identifier-length.html) in the query results according to this protocol #14940
- π Fix the incorrect query result that might occur when using the string type in
DIV
. For instance, now you can correctly execute theselect 1 / '2007' div 1
statement 14098
- β Add the
-
v3.0.10 Changes
February 20, 2020β‘οΈ SQL Optimizer
- π Fix the incorrect time zone results when the
unixtimestamp
expression calculates the time zone of the table partitions #14476 - π Fix the system panic issue caused by incorrect processing logic during CM-Sketch statistics initialization #14470
- π Fix the issue that the default database name of the SQL statement in SQL bindings is set incorrectly #14548
- π Fix the issue that
json_key
is not compatible with MySQL #14561 - β Add the feature of automatically updating the statistics of partitioned tables #14566
- π Fix the issue that the plan ID changes when the
PointGet
operation is executed (the plan ID is expected to be1
always) #14595 - π Fix the system panic issue caused by incorrect processing logic when SQL bindings do not match exactly #14263
- π Fix the issue that characters in JSON such as
&
,<
and>
are incorrectly escaped #14637 - π Fix the panic issue caused by incorrect processing logic when an SQL binding processes illegal records #14645
- π Fix a MySQL incompatibility issue by adding Truncated error detection to decimal division calculation #14673
- SQL Execution Engine
- π Fix wrong
Join
results whenIndexLookUpJoin
usesOtherCondition
to constructInnerRange
#14599 - Correct the expression name of the
IsTrue
function #14516 - π Fix the system panic issue caused by excessive memory usage when the
HashJoin
operation is building a hash table #14642
Transaction
- π Fix the issue that data visibility does not meet expectations due to transaction timeout when executing
PointGet
operations #14480 - π Change the timing of pessimistic transaction activation to delayed activation, consistent with the optimistic transaction mode #14474
Server
- Delete the
tidb_pprof_sql_cpu
configuration item and add thetidb_pprof_sql_cpu
variable #14416 - π Fix the issue that users can query all databases only when they have global privileges #14386
- Add the
tidb_session_statement_deadlock_detect_duration_seconds
monitoring item to monitor deadlock detection duration #14484 - π Fix the system panic issue caused by some logic errors of GC workers #14439
- π Fix the issue that some memory usage is counted inaccurately #14533
- Add the
tidb_session_statement_pessimistic_retry_count
monitoring item to monitor the number of retries after the failure to lock pessimistic transactions #14619 - π Fix the incorrect privilege check for
show binding
statements #14618 - π Fix the issue that the query cannot be killed because the
backoff
logic does not include checking thekilled
tag #14614 - π Improve the performance of statement summary by reducing the time to hold internal locks #14627
- π Fix the issue that TiDB's result of parsing strings to time is incompatible with MySQL #14570
- π Record the user login failures in audit logs #14620
- Add the
tidb_session_ statement_lock_keys_count
monitoring item to monitor the number of lock keys for pessimistic transactions #14634 - π Fix the issue of successfully granting users privileges on a table that does not exist #14611
- π Fix the incorrect time zone results when the
-
v3.0.9 Changes
January 14, 2020Executor
- π Fix the incorrect result when the aggregate function is applied to the
ENUM
column and the collection column #14364
Server
- Support system variables
auto_increment_increment
andauto_increment_offset
#14396 - Add the
tidb_tikvclient_ttl_lifetime_reach_total
monitoring metric to monitor the number of pessimistic transactions with a TTL of 10 minutes #14300 - π² Output the SQL information in the log when the SQL query causes a panic during its execution #14322
- β Add the
plan
andplan_digest
fields in the statement summary table to record theplan
that is being executed and theplan
signature #14285 - π§ Adjust the default value of the
stmt-summary.max-stmt-count
configuration item from101
to200
#14285 - β Add the
plan_digest
field in the slow query table to record theplan
signature #14292
DDL
- π Fix the issue that the results of anonymous indexes created using
alter table ... add index
on theprimary
column is inconsistent with MySQL #14310 - π Fix the issue that
VIEW
s are mistakenly dropped by thedrop table
syntax #14052
Planner
- π Optimize the performance of statements such as
select max(a), min(a) from t
. If an index exists in thea
column, the statement is optimized toselect * from (select a from t order by a desc limit 1) as t1, (select a from t order by a limit 1) as t2
to avoid full table scan #14410
- π Fix the incorrect result when the aggregate function is applied to the
-
v3.0.8 Changes
December 31, 2019β‘οΈ SQL Optimizer
- π Fix the wrong SQL binding plan caused by untimely cache updates #13891
- π Fix the issue that the SQL binding might be invalid when an SQL statement contains a symbol list #14004
- π Fix the issue that an SQL binding cannot be created or deleted because an SQL statement ends with
;
#14113 - π Fix the issue that a wrong SQL query plan might be selected because the
PhysicalUnionScan
operator sets wrong statistics #14133 - β Remove the
minAutoAnalyzeRatio
restriction to makeautoAnalyze
triggers more frequently at some scenarios and improve the precision of the statistics #14015
SQL Execution Engine
- π Fix issues that the
INSERT/REPLACE/UPDATE ... SET ... = DEFAULT
syntax might report an error and combining the usage of theDEFAULT
expression with a virtual generated column might report an error #13682 - π Fix the issue that the
INSERT
statement might report an error when converting a string to a float #14011 - π Fix the issue that sometimes the aggregate operation is low effective because the concurrency value of the
HashAgg
executor is incorrectly initialized #13811 - π Fix the issue that an error is reported in the execution of
group by item
when the clause is in the parentheses #13658 - π Fix the issue that the execution of
OUTER JOIN
might report an error because TiDB incorrectly calculatesgroup by item
#14014 - π Fix the issue that the error message is inaccurate when Range-exceeding data is written into Range partitioned tables #14107
- βͺ Revert PR #10124 and cancel the
PadCharToFullLength
effect to avoid unexpected query results in special cases, considering that MySQL 8 will discardPadCharToFullLength
soon #14157 - π Fix the goroutine leak issue when executing the
EXPLAIN ANALYZE
statement caused by unguaranteedclose()
calling inExplainExec
#14226
DDL
- β‘οΈ Optimize the error message output of
change column
/modify column
to make it easier to understand #13796 - β Add the
SPLIT PARTITION TABLE
syntax to support splitting Regions for partitioned tables #13929 - π Fix the issue that the index length exceeds 3072 bytes and no error is reported because the index length is incorrectly checked when an index is created #13779
- π Fix the issue that the
GC life time is shorter than transaction duration
error message might be reported because it takes too much time to add an index in partitioned tables #14132 - Fix the panic when
SELECT * FROM information_schema.KEY_COLUMN_USAGE
is executed because the foreign key is not checked whenDROP COLUMN
/MODIFY COLUMN
/CHANGE COLUMN
is executed #14105
Server
- Statement Summary improvementsοΌ
- Add a large number of SQL metric fields to facilitate analyzing SQL statements in more detail #14151, #14168
- Add the
stmt-summary.refresh-interval
parameter to control whether to move the stale data from theevents_statements_summary_by_digest
table to theevents_statements_summary_by_digest_history
table (the default interval: 30 minutes) #14161 - Add the
events_statements_summary_by_digest_history
table to save the stale data inevents_statements_summary_by_digest
#14166
- π Fix the issue that the binlog is incorrectly output when RBAC-related internal SQL statements are executed #13890
- β Add the
server-version
configuration item to control the feature of modifying the TiDB server version #13906 - β Add the feature of using the HTTP interface to recover writing the TiDB binlog #13892
- β‘οΈ Update the privilege required by
GRANT roles TO user
fromGrantPriv
toROLE_ADMIN
orSUPER
, to keep consistency with the MySQL behavior #13932 - Modify the TiDB behavior from using the current database to reporting the
No database selected
error when theGRANT
statement does not specify a database name, to keep compatibility with the MySQL behavior #13784 - Modify the execution privilege for the
REVOKE
statement fromSuperPriv
toREVOKE
being executable only if the user has the privilege for the corresponding schema, to keep consistency with the MySQL behavior #13306 - π Fix the issue that
GrantPriv
is mistakenly granted to the target user when theGRANT ALL
syntax does not containWITH GRANT OPTION
#13943 - π Fix the issue that the error message does not contain the cause for the
LOAD DATA
statementβs wrong behavior whenLoadDataInfo
fails to calladdRecord
#13980 - π Fix the issue that wrong slow query information is output because multiple SQL statements in a query share the same
StartTime
#13898 - π Fix the issue that the memory might leak when
batchClient
processes a large transaction #14032 - Fix the issue that
system_time_zone
is always displayed asCST
and now TiDBβssystem_time_zone
is obtained fromsystemTZ
in themysql.tidb
table #14086 - π Fix the issue that the
GRANT ALL
syntax does not grant all privileges to the user #14092 - Fix the issue that the
Priv_create_user
privilege is invalid forCREATE ROLE
andDROP ROLE
#14088 - Modify the error code of
ErrInvalidFieldSize
from1105(Unknow Error)
to3013
#13737 - β Add the
SHUTDOWN
command to stop a TiDB server and add theShutdownPriv
privilege #14104 - π Fix the atomicity issue for the
DROP ROLE
statement to avoid some roles being deleted unexpectedly when TiDB fails to execute a statement #14130 - Fix the issue that the
tidb_enable_window_function
in theSHOW VARIABLE
result incorrectly outputs1
when a TiDB version is upgraded to 3.0, and replace the wrong result with0
#14131 - π Fix the issue that the goroutine might leak because
gcworker
continuously retries when the TiKV node is offline #14106 - π² Record the binlog
Prewrite
time in the slow query log to improve the usability for issue tracking #14138 - Make the
tidb_enable_table_partition
variable supportGLOBAL SCOPE
#14091 - π Fix the issue that the user privilege might be missing or mistakenly added because the newly added privilege is not correctly granted to the corresponding user when a new privilege is added #14178
- π Fix the issue that the
CheckStreamTimeoutLoop
goroutine might leak becauserpcClient
does not close when the TiKV server is disconnected #14227 - π Support certificate-based authentication (User document) #13955
Transaction
- Update the default value of the
tidb_txn_mode
variable fromββ
toβpessimisticβ
when a new cluster is created #14171 - π Fix the issue that the lock waiting time is too long for a pessimistic transaction because the lock waiting time for a single statement is not reset when a transaction is retried #13990
- π Fix the issue that wrong data might be read because unmodified data is unlocked for the pessimistic transaction model #14050
- π Fix repeated insert value restriction checks because transaction types are not distinguished when prewrite is performed in mocktikv #14175
- π Fix the panic because transactions are not correctly handled when
session.TxnState
isInvalid
#13988 - π Fix the issue that the
ErrConfclit
structure in mocktikv does not containConflictCommitTS
#14080 - π Fix the issue that the transaction is blocked because TiDB does not correctly check lock timeout after resolving the lock #14083
Monitor
- π Add the
pessimistic_lock_keys_duration
monitoring item inLockKeys
#14194
-
v3.0.4
October 08, 2019 -
v3.0.3 Changes
August 29, 2019β‘οΈ SQL Optimizer
- Add the
opt_rule_blacklist
table to disable logic optimization rules such asaggregation_eliminate
andcolumn_prune
#11658 - π Fix the issue that incorrect results might be returned for
Index Join
when the join key uses a prefix index or an unsigned index column that is equal to a negative value #11759 - π Fix the issue that
"
or\
in theSELECT
statements ofcreate ... binding ...
might result in parsing errors #11726
SQL Execution Engine
- π Fix the issue that type errors in the return value might occur when the
Quote
function handles a null value #11619 - π Fix the issue that incorrect results for
Ifnull
might be returned whenMax
/min
is used for type inferring withNotNullFlag
retained #11641 - π Fix the potential error that occurs when comparing bit type data in string form #11660
- β¬ Decrease the concurrency for data that requires sequential read to reduce the possibility of OOM #11679
- π Fix the issue that incorrect type inferring might be caused when multiple parameters are unsigned for some built-in functions (e.g.
If
,Coalesce
) #11621 - π Fix the incompatibility with MySQL when the
Div
function handles unsigned decimal types #11813 - π Fix the issue that panic might occur when executing SQL statements that modify the status of Pump/Drainer #11827
- π Fix the issue that panic might occur for
select ... for update
when Autocommit = 1 and there is nobegin
statement #11736 - π Fix the permission check error that might occur when the
set default role
statement is executed #11777 - π Fix the permission check error that might occur when
create user
ordrop user
is executed #11814 - π Fix the issue that the
select ... for update
statement might auto retry when it is constructed into thePointGetExecutor
function #11718 - π Fix the boundary error that might occur when the Window function handles partition #11825
- π Fix the issue that the
Time
function hits EOF errors when handling an incorrectly formatted argument #11893 - π Fix the issue that the Window function does not check the passed-in parameters #11705
- π Fix the issue that the plan result viewed via
Explain
is inconsistent with the actually executed plan #11186 - π Fix the issue that duplicate memory referenced by the Window function might result in a crash or incorrect results #11823
- β‘οΈ Update the incorrect information in the
Succ
field in the slow log #11887
Server
- Rename the
tidb_back_off_wexight
variable totidb_backoff_weight
#11665 - β‘οΈ Update the minimum TiKV version compatible with the current TiDB to v3.0.0 #11618
- π Support
make testSuite
to ensure the suites in the test are correctly used #11685
DDL
- π Skip the execution of unsupported partition-related DDL statements, including statements that modify the partition type while deleting multiple partitions #11373
- Disallow a Generated Column to be placed before its dependent columns #11686
- Modify the default values of
tidb_ddl_reorg_worker_cnt
andtidb_ddl_reorg_batch_size
#11874
Monitor
- β Add new backoff monitoring types to record duration for each backoff type; add more backoff metrics to cover previously uncounted types such as commit backoff #11728
- Add the
-
v3.0.2 Changes
August 06, 2019β‘οΈ SQL Optimizer
- π Fix the issue that the "Can't find column in schema" message is reported when the same table occurs multiple times in a query and logically the query result is always empty #11247
- Fix the issue that the query plan does not meet the expectation caused by the
TIDB_INLJ
hint not working correctly in some cases (likeexplain select /*+ TIDB_INLJ(t1) */ t1.b, t2.a from t t1, t t2 where t1.b = t2.a
) #11362 - π Fix the issue that the column name in the query result is wrong in some cases (like
SELECT IF(1,c,c) FROM t
) #11379 - π Fix the issue that some queries like
SELECT 0 LIKE 'a string'
returnTRUE
becausetheLIKE
expression is implicitly converted to 0 in some cases #11411 - π Support sub-queries in the
SHOW
statement, likeSHOW COLUMNS FROM tbl WHERE FIELDS IN (SELECT 'a')
#11459 - π Fix the issue that the related column of the aggregate function cannot be found and an error is reported caused by the
outerJoinElimination
optimizing rule not correctly handling the column alias; improve alias parsing in the optimizing process to make optimization cover more query types #11377 - π Fix the issue that no error is reported when the syntax restriction is violated in the Window function (for example,
UNBOUNDED PRECEDING
is not allowed to appear at the end of the Frame definition) #11543 - Fix the issue that
FUNCTION_NAME
is in uppercase in theERROR 3593 (HY000): You cannot use the window function FUNCTION_NAME in this context
error message, which causes incompatibility with MySQL #11535 - π Fix the issue that the unimplemented
IGNORE NULLS
syntax in the Window function is used but no error is reported #11593 - π Fix the issue that the Optimizer does not correctly estimate time equal conditions #11512
- π Support updating the Top-N statistics based on the feedback information #11507
SQL Execution Engine
- π Fix the issue that the returned value is not
NULL
when theINSERT
function containsNULL
in parameters #11248 - π Fix the issue that the computing result might be wrong when the partitioned table is checked by the
ADMIN CHECKSUM
operation #11266 - π Fix the issue that the result might be wrong when INDEX JOIN uses the prefix index #11246
- π Fix the issue that result might be wrong caused by incorrectly aligning fractions when the
DATE_ADD
function does subtraction on date numbers involving microseconds #11288 - π Fix the wrong result caused by the
DATE_ADD
function incorrectly processing the negative numbers inINTERVAL
#11325 - π Fix the issue that the number of fractional digits returned by
Mod
(%
),Multiple
(*
) orMinus
(-
) is different from that in MySQL whenMod
,Multiple
orMinus
returns 0 and the number of fractional digits is large (likeselect 0.000 % 0.11234500000000000000
) #11251 - Fix the issue that
NULL
with a warning is incorrectly returned when the length of the result returned byCONCAT
andCONCAT_WS
functions exceedsmax_allowed_packet
#11275 - π Fix the issue that
NULL
with a warning is incorrectly returned when parameters in theSUBTIME
andADDTIME
functions are invalid #11337 - π Fix the issue that
NULL
is incorrectly returned when parameters in theCONVERT_TZ
function are invalid #11359 - β Add the
MEMORY
column to the result returned byEXPLAIN ANALYZE
to show the memory usage of this query #11418 - β Add
CARTESIAN JOIN
to the result ofEXPLAIN
#11429 - π Fix the incorrect data of auto-increment columns of the float and double types #11385
- π Fix the panic issue caused by some
nil
information when pseudo statistics are dumped #11460 - π Fix the incorrect query result of
SELECT β¦ CASE WHEN β¦ ELSE NULL ...
caused by constant folding optimization #11441 - π Fix the issue that
floatStrToIntStr
does not correctly parse the input such as+999.9999e2
#11473 - β Fix the issue that
NULL
is not returned in some cases when the result of theDATE_ADD
andDATE_SUB
function overflows #11476 - π Fix the issue that the conversion result is different from that in MySQL if the string contains an invalid character when a long string is converted to an integer #11469
- π Fix the issue that the result of the
REGEXP BINARY
function is incompatible with MySQL caused by case sensitiveness of this function #11504 - 0οΈβ£ Fix the issue that an error is reported when the
GRANT ROLE
statement receivesCURRENT_ROLE
; fix the issue that theREVOKE ROLE
statement does not correctly revoke themysql.default_role
privilege #11356 - π Fix the display format issue of the
Incorrect datetime value
warning information when executing statements likeSELECT ADDDATE('2008-01-34', -1)
#11447 - π Fix the issue that the error message reports
constant β¦ overflows float
rather thanconstant β¦ overflows bigint
if the result overflows when a float field of the JSON data is converted to an integer #11534 - π Fix the issue that the result might be wrong caused by incorrect type conversion when the
DATE_ADD
function receivesFLOAT
,DOUBLE
andDECIMAL
column parameters #11527 - π Fix the wrong result caused by incorrectly processing the sign of the INTERVAL fraction in the
DATE_ADD
function #11615 - π Fix the incorrect query result when Index Lookup Join contains the prefix index caused by
Ranger
not correctly handling the prefix index #11565 - Fix the issue that the "Incorrect arguments to NAME_CONST" message is reported if the
NAME_CONST
function is executed when the second parameter ofNAME_CONST
is a negative number #11268 - π Fix the issue that the result is incompatible with MySQL when an SQL statement involves computing the current time and the value is fetched multiple times; use the same value when fetching the current time for the same SQL statement #11394
- π Fix the issue that
Close
is not called for ChildExecutor when theClose
of baseExecutor reports an error. This issue might lead to Goroutine leaks when theKILL
statements do not take effect and ChildExecutor is not closed #11576
Server
- π Fix the issue that the auto-added value is 0 instead of the current timestamp when
LOAD DATA
processes the missingTIMESTAMP
field in the CSV file #11250 - π Fix issues that the
SHOW CREATE USER
statement does not correctly check related privileges, andUSER
andHOST
returned bySHOW CREATE USER CURRENT_USER()
might be wrong #11229 - π Fix the issue that the returned result might be wrong when
executeBatch
is used in JDBC #11290 - β¬οΈ Reduce printing the log information of the streaming client when changing the TiKV server's port #11370
- β‘οΈ Optimize the logic of reconnecting the streaming client to the TiKV server so that the streaming client will not be blocked for a long time #11372
- Add
REGION_ID
inINFORMATION_SCHEMA.TIDB_HOT_REGIONS
#11350 - β± Cancel the timeout duration of obtaining Region information from the PD API to ensure that obtaining Region information will not end in a failure when TiDB API http://{TiDBIP}:10080/regions/hot is called due to PD timeout when the number of Regions is large #11383
- π Fix the issue that Region related requests do not return partitioned table-related Regions in the HTTP API #11466
- 0οΈβ£ Modify some default parameters related to pessimistic locks, these modifications reduce the probability of locking timeout caused by slow operations when the user manually validates pessimistic locking #11521
- Increase the default TTL of pessimistic locking from 30 seconds to 40 seconds
- Increase the maximum TTL from 60 seconds to 120 seconds
- Calculate the pessimistic locking duration from the first
LockKeys
request
- π Change the
SendRequest
function logic in the TiKV client: try to immediately connect to another peer instead of keeping waiting when the connect cannot be built #11531 - β‘οΈ Optimize the Region cache: label the removed store as invalid when a store is moved while another store goes online with a same address, to update the store information in the cache as soon as possible #11567
- β Add the Region ID to the result returned by the
http://{TiDB_ADDRESS:TIDB_IP}/mvcc/key/{db}/{table}/{handle}
API #11557 - π Fix the issue that Scatter Table does not work caused by the Scatter Table API not escaping the Range key #11298
- π Optimize the Region cache: label the store where the Region exists as invalid when the correspondent store is inaccessible to avoid reduced query performance caused by accessing this store #11498
- π Fix the error that the table schema can still be obtained through the HTTP API after dropping the database with the same name multiple times #11585
DDL
- π Fix the issue that an error occurs when a non-string column with a zero length is being indexed #11214
- π Disallow modifying the columns with foreign key constraints and full-text indexes (Note: TiDB still supports foreign key constraints and full-text indexes in syntax only) #11274
- π Fix the issue that the index offset of the column might be wrong because the position changed by the
ALTER TABLE
statement and the default value of the column are used concurrently #11346 - π Fix two issues that occur when parsing JSON files:
- Disallow dropping indexes on the auto-increment column to avoid that the auto-increment column might get an incorrect result #11399
- π Fix the following issues #11492:
- The character set and the collation of the column are not consistent when explicitly specifying the collation but not the character set
- The error is not correctly reported when there is a conflict between the character set and the collation that are specified by
ALTER TABLE β¦ MODIFY COLUMN
- Incompatibility with MySQL when using
ALTER TABLE β¦ MODIFY COLUMN
to specify character sets and collations multiple times
- β Add the trace details of the subquery to the result of the
TRACE
query #11458 - π Optimize the performance of executing
ADMIN CHECK TABLE
and greatly reduce its execution time #11547 - Add the result returned by
SPLIT TABLE β¦ REGIONS/INDEX
and makeTOTAL_SPLIT_REGION
andSCATTER_FINISH_RATIO
display the number of Regions that have been split successfully before timeout in the result #11484 - π Fix the issue that the precision displayed by statements like
SHOW CREATE TABLE
is incomplete whenON UPDATE CURRENT_TIMESTAMP
is the column attribute and the float precision is specified #11591 - π Fix the issue that the index result of the column cannot be correctly calculated when the expression of a virtual generated column contains another virtual generated column #11475
- π Fix the issue that the minus sign cannot be added after
VALUE LESS THAN
in theALTER TABLE β¦ ADD PARTITION β¦
statement #11581
Monitor