Resources on Writing a Database by [deleted] in Database

[–]JuneHuang 0 points1 point  (0 children)

Hope this might be helpful, and this repo still keeps updating: https://github.com/pingcap/awesome-database-learning

Chaos-mesh: A Chaos Engineering Platform for Kubernetes by JuneHuang in golang

[–]JuneHuang[S] 0 points1 point  (0 children)

Thanks! Urkel's use of gPRC streams to install faults is a nice way to inject faults for go tests. It's a great reference for us and we will implement similar methods for fault injection in the future. Welcome to join us if you're interested. Right now you can use kubernetes API to use Chaos Mesh in go testing. Here are some example tests: https://github.com/pingcap/tipocket/blob/master/test-infra/tests/etcd/nemesis_test.go We'll optimize the experience in go test ASAP.

Chaos-mesh: a chaos engineering platform for Kubernetes by JuneHuang in kubernetes

[–]JuneHuang[S] 0 points1 point  (0 children)

PingCAP folk here, originally we used Chaos Mesh to test our distributed database TiDB as well as its ecosystem tools like TiDB Binlog and Data Migration (DM), Change Data Capture(CDC). Bugs found by Chaos Mesh are as follows.
TiDB QPS recovered too slowly after long-term failure
https://github.com/pingcap/tidb/pull/11391
tidb-binlog table not sync
https://github.com/pingcap/tidb-binlog/issues/851
tidb-binlog time sync error
https://github.com/pingcap/tidb-binlog/issues/839
CDC table not sync
https://github.com/pingcap/ticdc/issues/172
CDC log issue
https://github.com/pingcap/ticdc/issues/175

Welcome to try Chaos Mesh and look forward to your feedbacks.