TiKV
v8.5.6Storage & DataTiKV v8.5.6은 컬럼 수준 권한 관리, 다차원 슬로우 쿼리 규칙, FK 체크 공유 잠금 지원과 함께 crossbeam skiplist 메모리 누수, 비관적 트랜잭션 데이터 불일치 등 주요 버그 13건을 수정했습니다.
breaking통계 Version 1 지금 바로 마이그레이션 — 다음 릴리스에서 제거됩니다
이번 릴리스에서 tidb_analyze_version=1이 공식 deprecated 처리됐고, 향후 버전에서 제거됩니다. 모든 인스턴스에서 SHOW VARIABLES LIKE 'tidb_analyze_version'으로 현황을 확인하세요. v1을 사용 중인 경우 v2로 전환하고 해당 테이블에 ANALYZE를 다시 실행해야 합니다. Version 2는 히스토그램 정확도가 더 높고 앞으로 유일하게 지원되는 방식입니다. 제거 시점에 쫓기기 전에 미리 전환하는 게 낫습니다.
security컬럼 수준 권한으로 민감 데이터 격리 — 기존 권한 설정을 재검토하세요
TiDB가 MySQL 호환 컬럼 수준 GRANT/REVOKE를 지원합니다. 지금까지 뷰(View) 기반으로 특정 컬럼(PII, 금융 데이터 등) 접근을 제한했다면 이제 권한 레이어에서 직접 제어할 수 있습니다. 민감 컬럼이 포함된 테이블을 감사하고 최소 권한 원칙에 따라 컬럼 수준 GRANT를 적용하세요. 기존 권한 감사 결과가 컬럼 수준 제어를 반영하지 못했을 수 있으므로 사용자 권한 목록을 전면 재검토할 필요가 있습니다.
enhancementFK 체크 공유 잠금 활성화로 쓰기 집중 워크로드 경합 해소
소수의 부모 테이블 행을 참조하는 자식 테이블에 고동시 INSERT/UPDATE가 발생한다면 현재 배타적 잠금 경합이 심할 겁니다. tidb_foreign_key_check_in_shared_lock=ON으로 설정하고 스테이징에서 벤치마크해 보세요. 부모 테이블에 공유 잠금을 사용하면 FK 체크가 서로를 블록하지 않습니다. 잠금 의미 구조가 바뀌는 만큼 운영 적용 전 반드시 검증이 필요합니다. 비관적 트랜잭션 환경이라면 prewrite 재시도 불일치 버그(#11187) 수정도 포함됐으므로 TiKV 노드 패치 버전을 확인하세요.
주요 변경 (6)
- 컬럼 수준 GRANT/REVOKE 지원 — MySQL과의 오랜 권한 호환성 격차 해소
- tidb_slow_log_rules로 인스턴스/세션/SQL 단위에서 Query_time, Digest, Mem_max, KV_total 등 복합 조건 기반 슬로우 쿼리 로그 세밀 제어 가능
- tidb_foreign_key_check_in_shared_lock=ON 설정 시 FK 체크에 공유 잠금 사용 — 대용량 자식 테이블 동시 쓰기 경합 완화
- TiKV에 부하 기반 컴팩션 도입 — MVCC 읽기 오버헤드를 감지해 핫 Region을 자동으로 우선 컴팩션
- 통계 Version 1(tidb_analyze_version=1) 및 TiDB Lightning 웹 UI 지원 중단(v8.5.7에서 제거 예정)
- crossbeam skiplist 메모리 누수, 비관적 트랜잭션 prewrite 재시도 시 데이터 불일치, 디스크 가득 찬 노드에서 팔로워 읽기 차단 등 핵심 버그 수정