cdc goroutines become crazy when initializing a capture with lots of regions and tikv.cdc.min-ts-interval = 200ms #5610
Closed
Description
What did you do?
Create a capture on 16 MySQL tables, 131K regions totally with
- tikv.cdc.min-ts-interval = 200ms
- tikv.cdc.min-ts-interval = 1s
What did you expect to see?
Both 2 operations can be finished quickly. With tikv.cdc.min-ts-interval = 1s
it's expected:
What did you see instead?
However with tikv.cdc.min-ts-interval = 200ms
the capture creating can never finished, and cpu usage is very high:
And here is a 30s CPU profile:
We can see the CPU time is about 480s, which means all 16C are very busy on runtime.selectgo
.
Versions of the cluster
All components are nightly.
Go version is 1.18.1.