TiDB 2.1.18 釋出,分散式 NewSQL 資料庫
阿新 • • 發佈:2020-06-24
TiDB 2.1.18 已經發布了,該版本更新內容如下:
TiDB
- SQL 優化器
- 修復 Feedback 切分查詢範圍出錯的問題 #12172
- 修復點查中許可權檢查不正確的問題 #12341
- 將 Limit 運算元下推到
IndexLookUpReader
執行邏輯中,優化select ... limit ... offset ...
的執行效能 #12380 - 支援在
ORDER BY
、GROUP BY
和LIMIT OFFSET
中使用引數 #12514 - 修復 partition 表上的 IndexJoin 返回錯誤結果的問題 #12713
- 修復 TiDB 中
str_to_date
- 修復當查詢條件中包含 cast 函式時 outer join 被錯誤轉化為 inner join 的問題 #12791
- 修復 AntiSemiJoin 的 join 條件中錯誤的表示式傳遞 #12800
- SQL 執行引擎
- 修復時間取整不正確的問題 (如 2019-09-11 11:17:47.999999666 應該被取整到 2019-09-11 11:17:48) #12259
- 修復
PREPARE
語句型別沒有記錄在監控中的問題 #12329 - 修復
FROM_UNIXTIME
在檢查 NULL 值時 panic 的錯誤 - 修復
YEAR
型別資料插入非法年份時,結果為NULL
而不是0000
的相容性問題 #12744 - 改進 AutoIncrement 列隱式分配時的行為,與 MySQL 自增鎖的預設模式 (“consecutive” lock mode) 保持一致:對於單行 Insert 語句的多個自增 AutoIncrement ID 的隱式分配,TiDB 保證分配值的連續性。該改進保證 JDBC
getGeneratedKeys()
方法在任意場景下都能得到正確的結果。 #12619 - 修復當 HashAgg 作為 Apply 子節點時查詢 hang 住的問題 #12769
- 修復邏輯表示式 AND / OR 在涉及型別轉換時返回錯誤結果的問題
- Server
- 修復
KILL TIDB QUERY
語法對SLEEP()
語句無效的問題 #12159 - 修復 AUTO INCREMENT 分配 MAX int64 和 MAX uint64 沒有報錯的問題 #12210
- 修復日誌級別設定為
ERROR
時,慢日誌不會被記錄的問題 #12373 - 將快取 100 個 Schema 變更相關的表資訊調整成 1024 個,且支援通過
tidb_max_delta_schema_count
系統變數修改 #12515 - 將 SQL 的統計方式開始時間由“開始執行”改為“開始編譯”,使得 SQL 效能統計更加準確 #12638
- 在 TiDB 日誌中新增
set session autocommit
的記錄 #12568 - 將 SQL 的開始時間記錄在
SessionVars
中,避免計劃執行時,該時間被重置 #12676 - 在
Order By
/Group By
/Limit Offset
字句中支援?
佔位符 #12514 - 慢日誌中新增
Prev_stmt
欄位,用於最後一條語句是COMMIT
時輸出前一條語句 #12724 - 當一個顯式提交的事務
COMMIT
時出錯,在日誌中記錄COMMIT
前一條語句 #12747 - 優化在 TiDB Server 執行 SQL 時,對前一條語句的儲存方式以提升效能 #12751
- 修復
skip-grant-table=true
時,FLUSH PRIVILEGES
語句導致系統 Panic 的問題 #12816 - 將 AutoID 的最小申請步長從 1000 增加為 30000,避免短時間大量寫入時頻繁請求 AutoID 造成效能瓶頸 #12891
- 修復 Prepared 語句在 TiDB 發生 panic 時錯誤日誌中未打印出錯 SQL 的問題 #12954
- 修復 COM_STMT_FETCH 慢日誌時間記錄和 MySQL 不一致問題 #12953
- 當遇到寫衝突時,在報錯資訊中新增錯誤碼,以方便對衝突原因進行診斷 #12878
- 修復
- DDL
- 為避免誤操作,TiDB 預設不再允許刪除列的
AUTO INCREMENT
屬性,當確實需要刪除時,請更改系統變數tidb_allow_remove_auto_inc
;相關檔案請見:TiDB 專用系統變數和語法 #12146 - 支援 Create Table 語句中建唯一索引時帶多個 Unique #12469
- 修復
CreateTable
語句中指定外來鍵約束時,外來鍵表在沒有指定 Database 時未能使用主表的 Database 導致報錯的問題 #12678 - 修復
ADMIN CANCEL DDL JOBS
時報invalid list index
錯的問題 #12681
- 為避免誤操作,TiDB 預設不再允許刪除列的
- Monitor
PD
- 修復 pd-ctl
--help
命令輸出內容 #1772
Tools
- TiDB Binlog
TiDB Ansible
- TiDB Binlog 增加 queue size 和 query histogram 監控項 #952
- 更新 TiDB 告警表示式 #961
- 新增配置檔案檢查功能,部署或者更新前會檢查配置是否合理 #973
- TiDB 新增加索引速度監控項 #987
- 更新 TiDB Binlog 監控 Dashboard,相容 4.6.3 版本的 Grafana #993
詳細資訊: