This Month in TiKV - March 2020

TiKV Authors

April 2, 2020

In this unprecedented global situation, we hope you can all keep a positive attitude and stay healthy.

Let’s take a look at what we have achieved in March!


TiKV has finished a third-party security assessment! This assessment of the TiKV scope, commissioned by CNCF and executed by Cure53 in early 2020, concludes with generally positive results. The full report is available here.

The TiKV community held the first-ever community meeting on March 26, 2020. Liu Tang (@siddontang), one of our maintainers, kicked off the meeting, and the community manager, Calvin Weng (@dcalvin) shared about recent updates on community governance and membership. Also, a demo of unified thread pool, a thread pool in Rust to improve TiKV’s performance in allocating and scheduling resources, was presented by Yilin Chen (@sticnarf) at the end of the meeting. In case you missed it, the recording video is available here and the meeting notes are available here.

We have two new TiKV maintainers - Daobing Li (@lidaobing) from JD Cloud & AI and Fu Chen (@fredchenbj) from Yidian Zixun. Congratulations! We look forward to working with them. The nominating PRs are here:

The 2020 TiKV & GSoC projects are going smoothly. Mentors, Yi Wu (@yiwu-arbug) and Wei Liu (@Little-Wallace), had a video call with students on Mar 27 to help them learn details about these projects. Students have already submitted their proposals to GSoC. Good luck to them and we look forward to seeing their great achievements by the end of summer.

CNCF has confirmed the new event dates for KubeCon + CloudNativeCon Europe 2020 and TiKV speaking sessions are scheduled on August 15 and 16. We keep fingers crossed for those fighting against the Novel Coronavirus and expect to see you in TiKV speaking sessions by mid-summer.


This month our team made 5 TiKV releases!

You can review the changelogs here:

Reading materials

@YangKeao wrote Quickly Find Rust Program Bottlenecks Online Using a Go Tool to introduce the experience of using the Go tool pprof to visualize TiKV’s profiling data.

In the recap of RocksDB in TiKV in a 2017 meetup, @siddontang shared about how the friendship between RocksDB and TiKV came into being and how it has developed.

Notable PRs

@overvenus supported encryption at rest in #6990.

@zhangjinpeng1987 calculated CPU quota and memory limit in the container environment in #7074, and automatically adjusted related configurations in TiKV.

@yiwu-arbug added utilities to enable AWS Identity and Access Management (IAM) in Kubernetes in #7201.

@loxp added swagger supports for API in #2276, making API easy to use.

@innerr and @youjiali1995 implemented pipelined pessimistic locks in #6984. Pipelining can improve performance in pessimistic transactions.

Notable issues

Help wanted issues (mentoring available)

@zhangjinpeng1987 suggested improving the test coverage of the components/codec module, the test coverage of components/raftstore module and the test coverage of the components/tidb_query_datatypes module separately in #7186, #7191 and #7192.

@breeswish created issue #7039, requesting a feature to optimize the coprocessor’s analytical performance.

Call for participation

@MyonKeminta opened issue #7153, requesting to avoid incorrect “engine” label to distinguish nodes with different engines. @overvenus and @disksing presented their opinions on this issue; what is yours?

@5kbpers suggested in #7113 to support to delay the GC for delete record to relax the limitation of the GC interval. @MyonKeminta agreed with @5kbpers. What do you think?

New Contributors

We’d like to welcome the following new contributors to TiKV and thank them for their work!

If you’d like to get involved, we’d love to invite you to participate in the TiDB Challenge Program and you might be interested in starting from some easy tasks at the TiKV project. If you don’t know how to begin, please leave a comment and somebody will help you out. We’re also very keen for people to contribute to documentation, tests, optimizations, benchmarks, refactoring, or other useful things.

This Week in TiDB

For more detailed and comprehensive information about TiDB and TiKV, we have weekly updates. The following cover late February and March.